输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。用简单的C语言和ASCII码完成
时间: 2024-05-13 09:20:15 浏览: 38
请看以下代码:
```
#include <stdio.h>
int main() {
char str[100];
int letter = 0, space = 0, digit = 0, other = 0;
printf("请输入一行字符:");
fgets(str, 100, stdin);
for (int i = 0; str[i] != '\0'; i++) {
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) {
letter++;
} else if (str[i] == ' ') {
space++;
} else if (str[i] >= '0' && str[i] <= '9') {
digit++;
} else {
other++;
}
}
printf("字母个数:%d\n空格个数:%d\n数字个数:%d\n其他字符个数:%d\n", letter, space, digit, other);
return 0;
}
```
解释一下代码:
1. 声明一个字符数组 str,以存储用户输入的字符串。
2. 声明四个计数变量 letter、space、digit 和 other,分别代表字母、空格、数字和其他字符的个数。
3. 使用 fgets() 函数从标准输入读取用户输入的字符串,最多读取 100 个字符,存储在字符数组 str 中。
4. 使用 for 循环遍历字符数组 str,统计字母、空格、数字和其他字符的个数。
5. 判断字符是否为字母、空格、数字或其他字符,分别更新对应的计数变量。
6. 使用 printf() 函数输出统计结果。
希望能帮到你!
阅读全文