In this tutorial we will learn writing C program to count the total occurrence of alphabets, digits and special characters in a given string. To store the occurrence for all this three types, we need three integer variable that will work as counter.
Also check this similar program
C Program to count the occurrence of vowel and consonants in string
How this program will work?
- Our program will take a string as a input. From which we will find the alphabets, digits and special characters and count its occurrence.
- We will have 3 integer variables to count and store alphabets, digits and special characters.
- Here we will use if else check to find the type of characters of string. Increase the counter by 1 on each match
C Program to count alphabets, digits and special characters
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
char str[256];
int alpha=0, digit=0, specialChar = 0,i;
printf("C program to count alphabet, digit and special character \n");
printf("Please Enter a String : ");
scanf("%[^\n]%*c", str);
int len = strlen(str);
for(i=0; i<len; i++)
{
if (isdigit(str[i]))
digit++;
else if (isalpha(str[i]))
alpha++;
else
specialChar++;
}
printf("alphabets = %d, digits = %d, specialChars = %d ", alpha, digit, specialChar);
return 0;
}
Output
C program to count alphabet, digit and special character
Please Enter a String : Quescol @#$ 123
alphabets = 7, digits = 3, specialChars = 5
Important :
Explanation for %[^\n]%*c used in Scanf -> Here, [] is the scanset character. ^\n tells to take input until newline doesn’t get encountered. Then, with this %*c, it reads newline character and here used * indicates that this newline character is discarded.
[wpusb]