输入一行字符分别统计出其中英文字母数字空格和其他字符的个数,如何用C语言实现?
时间: 2024-10-11 14:08:33 浏览: 7
在C语言中,你可以通过遍历输入字符串并使用相应的条件判断来统计字母、数字、空格和其他字符的数量。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h> // 包含ctype.h头文件,用于处理字符类型
int main() {
char input[100];
int alpha_count = 0; // 字母计数
int digit_count = 0; // 数字计数
int space_count = 0; // 空格计数
int other_count = 0; // 其他字符计数
printf("请输入一行字符: ");
fgets(input, sizeof(input), stdin); // 从标准输入读取一行字符
for (int i = 0; input[i] != '\0'; i++) { // 遍历字符串
if (isalpha(input[i])) { // 检查是否为字母
alpha_count++;
} else if (isdigit(input[i])) { // 检查是否为数字
digit_count++;
} else if (input[i] == ' ') { // 检查是否为空格
space_count++;
} else { // 其他字符
other_count++;
}
}
printf("\n字母: %d\n", alpha_count);
printf("数字: %d\n", digit_count);
printf("空格: %d\n", space_count);
printf("其他字符: %d\n", other_count);
return 0;
}
```
这个程序首先定义了四个整数变量分别对应四种类型的字符计数,然后通过`fgets()`函数获取用户输入的字符串。接下来,它遍历字符串并对每个字符进行检查:如果是字母、数字或空格,就相应地增加计数;如果不是这三种情况,就将它们归类为其他字符。
最后,程序打印出每种字符类型的计数。