跳到主要内容

C 编程:计算元音、辅音等数量的程序

要理解这个例子,你应该了解以下 C 语言 主题的知识:

程序用于统计元音、辅音等字符数量

#include <stdio.h>
int main() {

char line[150];
int vowels, consonant, digit, space;

// 将所有变量初始化为 0
vowels = consonant = digit = space = 0;

// 获取一行字符串输入
printf("请输入一行字符串:");
fgets(line, sizeof(line), stdin);

// 遍历字符串的每一个字符
for (int i = 0; line[i] != '\0'; ++i) {

// 将字符转换为小写
line[i] = tolower(line[i]);

// 检查字符是否为元音
if (line[i] == 'a' || line[i] == 'e' || line[i] == 'i' ||
line[i] == 'o' || line[i] == 'u') {

// 元音的值增加 1
++vowels;
}

// 如果不是元音且是字母,则为辅音
else if ((line[i] >= 'a' && line[i] <= 'z')) {
++consonant;
}

// 检查字符是否为数字
else if (line[i] >= '0' && line[i] <= '9') {
++digit;
}

// 检查字符是否为空格
else if (line[i] == ' ') {
++space;
}
}

printf("元音: %d", vowels);
printf("\n辅音: %d", consonant);
printf("\n数字: %d", digit);
printf("\n空格: %d", space);

return 0;
}

输出

请输入一行字符串:C++ 20 是 C++ 目前的最新版本。
元音: 9
辅音: 16
数字: 2
空格: 8

在这里,用户输入的字符串存储在 line 变量中。

起初,变量 vowels(元音)、consonant(辅音)、digit(数字)和 space(空格)被初始化为 0

然后,使用 for 循环遍历字符串中的字符。在每次迭代中,我们:

  • 使用 tolower() 函数将字符转换为小写
  • 检查该字符是元音、辅音、数字还是空格。假设字符是辅音,那么 consonant 变量增加 1

当循环结束时,元音、辅音、数字和空格的数量分别存储在变量 vowelsconsonantdigitspace 中。

注意: 我们使用了 tolower() 函数 来简化程序。要使用这个函数,需要引入 ctype.h 头文件。