c语言输入一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数
时间: 2023-11-07 12:52:50 浏览: 73
可以使用以下代码实现:
```c
#include <stdio.h>
int main() {
char str[100];
int i, alpha, digit, space, other;
printf("请输入一行字符:\n");
gets(str);
alpha = digit = space = other = 0; // 初始化计数器
for (i = 0; str[i] != '\0'; i++) { // 遍历字符串
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) {
alpha++; // 英文字母
} else if (str[i] >= '0' && str[i] <= '9') {
digit++; // 数字
} else if (str[i] == ' ') {
space++; // 空格
} else {
other++; // 其他字符
}
}
printf("英文字母个数:%d\n", alpha);
printf("数字个数:%d\n", digit);
printf("空格个数:%d\n", space);
printf("其他字符个数:%d\n", other);
return 0;
}
```
注意,这里使用了 `gets()` 函数来读取一行字符,但是该函数存在安全性问题,因此建议使用 `fgets()` 函数代替。
阅读全文