输入一行字符,以'#'作为结束标志,分别统计出其中的英文字母、空格、数字和其他字符的个数。c语言
时间: 2024-10-17 22:02:54 浏览: 35
在C语言中,你可以通过遍历输入的字符串并逐个检查每个字符来完成这个任务。这里是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input[100]; // 假设输入不超过100个字符
fgets(input, sizeof(input), stdin); // 从标准输入读取一行字符
int alpha = 0; // 英文字母计数器
int space = 0; // 空格计数器
int digit = 0; // 数字计数器
int other = 0; // 其他字符(非字母、空格和数字)计数器
for (int i = 0; input[i] != '\0'; i++) { // 遍历直到遇到字符串结束符
if (isalpha(input[i])) { // 如果字符是字母
alpha++;
} else if (isspace(input[i])) { // 如果字符是空格
space++;
} else if (isdigit(input[i])) { // 如果字符是数字
digit++;
} else { // 否则(包括标点符号、特殊字符等)
other++;
}
}
printf("英文字母: %d\n", alpha);
printf("空格: %d\n", space);
printf("数字: %d\n", digit);
printf("其他字符: %d\n", other);
return 0;
}
```
在这个程序中,`isalpha()`、`isspace()` 和 `isdigit()` 函数用于判断字符是否分别是字母、空格和数字。剩下的就是非这三类的其他字符了。
阅读全文