用c语言,输入一行字符,统计其中的英文字母、数字、空格和其他字符个数。
时间: 2023-05-18 11:05:24 浏览: 47
```c
#include <stdio.h>
int main() {
char str[100];
int i, letter, digit, space, other;
letter = digit = space = other = 0;
printf("请输入一行字符:\n");
fgets(str, 100, stdin);
for (i = 0; str[i] != '\0'; i++) {
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) {
letter++;
} else if (str[i] >= '0' && str[i] <= '9') {
digit++;
} else if (str[i] == ' ' || str[i] == '\t' || str[i] == '\n') {
space++;
} else {
other++;
}
}
printf("字母个数:%d\n", letter);
printf("数字个数:%d\n", digit);
printf("空格个数:%d\n", space);
printf("其他字符个数:%d\n", other);
return 0;
}
```
说明:
1. 定义字符数组 `str` 存储输入的一行字符。
2. 定义变量 `letter`、`digit`、`space`、`other` 分别表示字母、数字、空格和其他字符的个数,初始化为 0。
3. 使用 `fgets()` 函数从标准输入流中读取一行字符,存储到字符数组 `str` 中。
4. 使用 `for` 循环遍历字符数组 `str` 中的每个字符,判断其属于哪一类字符,分别累加对应的个数。
5. 输出统计结果。