C program to count alphabets, digits and special characters

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]