C Program to Count Vowels and Consonants in a String

How to write a C Program to Count Vowels and Consonants in a String with an example?.

C Program to Count Vowels and Consonants in a String  Example 1

This program allows the user to enter a string (or character array). Next, it will count how many numbers of Vowel and Consonant present in the user-specified string using If Else Statement.

#include <stdio.h>

int main()
{
char str[100];
int i, vowels, consonants;
i = vowels = consonants = 0;

printf("\n Please Enter any String : ");
gets(str);

while (str[i] != '\0')
{
if(str[i] == 'a' || str[i] == 'e' || str[i] == 'i' || str[i] == 'o' || str[i] == 'u' ||
str[i] == 'A' || str[i] == 'E' || str[i] == 'I' || str[i] == 'O' || str[i] == 'U')
{
vowels++;
}
else
consonants++;
i++;
}
printf("\n Number of Vowels in this String = %d", vowels);
printf("\n Number of Consonants in this String = %d", consonants);

return 0;
}
C Program to Count Vowels and Consonants in a String 1

First, we used C While Loop to iterate every character in a C String.

while (str[i] != '\0')
{

Next, we used the If Else Statement to check whether each character is equal to a, e, i, o, u, A, E, I, I, O. And if it is TRUE, it is a Vowel otherwise, it’s a Consonant.

You can convert all the characters to the same case using C strlwr or C strupr. And then, check for lowercase or uppercase elements in the C Programming If condition

if(str[i] == 'a' || str[i]== 'e' || str[i] == 'i' || str[i] == 'o' || str[i] == 'u' ||
    str[i] == 'A' || str[i] == 'E' || str[i] == 'I' || str[i] == 'O' || str[i] == 'U')  {
	vowels++;
}

str[] = Hello World
i = vowels = consonants = 0

While Loop First Iteration: while (str[ i ] != 0)
The condition is True because str[0] = H.

Within the While Loop, we used If Else Statement to check whether it is an Vowel or Consonant. Refer to the C If Else Statement.

if(str[i] == ‘a’ || str[i]== ‘e’ || str[i] == ‘i’ || str[i] == ‘o’ || str[i] == ‘u’ || str[i] == ‘A’ || str[i] == ‘E’ || str[i] == ‘I’ || str[i] == ‘O’ || str[i] == ‘U’)
=> if(H == ‘a’ || H== ‘e’ || H== ‘i’ || H== ‘o’ || H== ‘u’ || H == ‘A’ || H == ‘E’ || H == ‘I’ || H == ‘O’ || H == ‘U’)

The above condition is false. So, it will execute the statement inside the Else block.
consonants++. It means consonants = 1

Second Iteration: while (str[ 1 ] != 0)
The condition is True because str[1] = e.
if(e == ‘a’ || e == ‘e’ || e == ‘i’ || e == ‘o’ || e == ‘u’ || e == ‘A’ || e == ‘E’ || e == ‘I’ || e == ‘O’ || e == ‘U’)
The above condition is True. So, it will execute the statement inside this block.
vowels++. It means vowels = 1

Do the same for remaining iterations

C Program to Count Vowels and Consonants in a String  Example 2

This program allows the user to enter any string value and count the number of Vowel or Consonant in this string using ASCII Values.

#include <stdio.h>

int main()
{
char str[100];
int i, vowels, consonants;
vowels = consonants = 0;

printf("\n Please Enter any String : ");
gets(str);

for(i = 0; str[i] != '\0'; i++)
{
if(str[i] == 97 || str[i] == 101 || str[i] == 105 || str[i] == 111 || str[i] == 117 ||
str[i] == 65 || str[i] == 69 || str[i] == 73 || str[i] == 79 || str[i] == 85)
{
vowels++;
}
else
consonants++;
}
printf("\n Number of Vowels in this String = %d", vowels);
printf("\n Number of Consonants in this String = %d", consonants);

return 0;
}
 Please Enter any String :  Tutorial Gateway

 Number of Vowels in this String = 7
 Number of Consonants in this String = 9

C Program to Count Vowels and Consonants in a String  Example 3

This C program for vowels and consonants count is the same as the first example, but this time we used the C Functions concept to separate the logic.

#include <stdio.h>

int check_vowel(char);

int main()
{
char str[100];
int i, vowels, consonants;
vowels = consonants = 0;

printf("\n Please Enter any String : ");
gets(str);

for(i = 0; str[i] != '\0'; i++)
{
if(check_vowel(str[i]))
{
vowels++;
}
else
consonants++;
}
printf("\n Number of Vowels in this String = %d", vowels);
printf("\n Number of Consonants in this String = %d", consonants);

return 0;
}

int check_vowel(char c)
{
if (c >= 'A' && c <= 'Z')
c = c + 32;

if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
return 1;

return 0;
}
 Please Enter any String :  hello everyone

 Number of Vowels in this String = 6
 Number of Consonants in this String = 8

C Program to Count Vowels and Consonants in a String  Example 4

In this program, we are using the Switch case (alternative to Else If) to count vowels and consonants. Refer to the C Switch case.

/* C Program to count vowels and consonants in a String */
 
#include <stdio.h>
 
int main()
{
  	char str[100];
  	int i, vowels, consonants;
  	vowels = consonants = 0;
 
  	printf("\n Please Enter any String :  ");
  	gets(str);
  	
  	for(i = 0; str[i] != '\0'; i++)
  	{
  		if( (str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z') )  
		{
			switch(str[i])
			{
				case 'a':
				case 'e':
				case 'i':
				case 'o':
				case 'u':
				case 'A':
				case 'E':
				case 'I':	
				case 'O':
				case 'U':
					vowels++;
					break;
				default:
					consonants++;
    		}
    	}
	}
    printf("\n Number of Vowels in this String = %d", vowels);  
	printf("\n Number of Consonants in this String = %d", consonants);   	
  
  	return 0;
}
 Please Enter any String :  learn c programming

 Number of Vowels in this String = 5
 Number of Consonants in this String = 12

C Program to Count Vowels and Consonants in a String  Example 5

This program to count vowels and consonants is the same as the first example, but this time we are using the concept of the pointers. Refer to the pointers in C.

#include <stdio.h>

int main()
{
char str[100];
char *s = str;
int vowels, consonants;
vowels = consonants = 0;

printf("\n Please Enter any String : ");
gets(str);

while (*s)
{
if(*s == 'a' || *s == 'e' || *s == 'i' || *s == 'o' || *s == 'u' ||
*s == 'A' || *s == 'E' || *s == 'I' || *s == 'O' || *s == 'U')
{
vowels++;
}
else
consonants++;
s++;
}
printf("\n Number of Vowels in this String = %d", vowels);
printf("\n Number of Consonants in this String = %d", consonants);

return 0;
}
 Please Enter any String :  vowels and consonants

 Number of Vowels in this String = 6
 Number of Consonants in this String = 15

Also Read

Comments are closed.