英文字母表由 26 个字母组成,其中 5 个被称为**元音**,其余 21 个字母被称为**辅音**。"**a, e, i, o, u**" 是英语中的**元音**,除此以外的所有字母都是辅音。**特殊字符**包括**空格、制表符、换行符**等。这个 C 程序统计元音和辅音的数量,它与字符串和字符相关。
首先,我们需要检查给定句子中的每个字母,并相应地增加元音或辅音的计数器。为此,首先将计数器设置为零。从用户那里读取一个句子,并使用`for 循环`逐个获取字符串中的字符,直到到达句子末尾的空字符。然后使用`if 条件`检查句子中的每个字符是否为元音。如果是元音,则将其计数器加 1,否则,辅音计数器加 1。
检查完句子中的所有字符后,我们将显示元音和辅音的数量
步骤 1:包含头文件以在 C 程序中使用内置函数。
步骤 2:声明字符数组 sentence[100] 和 vow[]="aeiou"。
步骤 3:初始化计数器变量 v_count 和 c_count 并将其设置为 0。
步骤 4:使用 fgets() 函数从用户处接收句子并存入变量 sentence。
步骤 5:使用 for 循环,逐个获取字符串中的每个字符,并执行步骤 6,直到最后一个字符。
步骤 6:首先,检查字符是否不是特殊字符,如果是,则执行步骤 7,否则进入循环的下一次迭代。
步骤 7:使用 strchr() 函数检查字符是否存在于元音数组 vow[] 中,这里通过 tolower() 函数将字符转换为小写,以检查大写和小写字母。如果它是元音,则将 v_count 计数加 1,否则将 c_count 计数加 1。
步骤 8:显示 v_count 计数器中的元音数量和 c_count 计数器中的辅音数量。
为了统计元音和辅音,我们将在 C 语言编程中使用以下概念,请参考这些概念以获得更好的理解。
#include <stdio.h>
#include <string.h>
#include<ctype.h>
void main() {
char sentence[100] , vow[] = "aeiou" ;
int i , v_count = 0 , c_count = 0 ;
char * st ;
printf ("Enter a sentence\n") ;
fgets (sentence, 100, stdin) ;
for (i = 0; sentence[i] != '\0'; i++) {
if (sentence[i] != '\t' && sentence[i] != ' ' && sentence[i] != '\n') {
st = strchr ( vow, tolower(sentence[i]) ) ; /*checking for vowels in both lower and upper case */
if (st != NULL)
v_count = v_count + 1 ; /* increment vowel counter */
else
c_count = c_count + 1 ; /* increment consonant counter */
}
}
/* display output number of vowels and consonants */
printf("\nNo. of vowels is %d", v_count );
printf("\nNo. of consonants is %d ", c_count );
}
Enter a sentence Good Morning No. of vowels is 4 No. of consonants is 7