输入一行字符,以'#'作为结束标志,分别统计出其中的英文字母、空格、数字和其他字符的个数。用c语言写
时间: 2024-10-25 22:12:16 浏览: 25
在C语言中,你可以使用`ctype.h`库中的函数来处理字符分类,同时利用计数器数组来统计不同类型的字符。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
int alpha_count = 0, space_count = 0, digit_count = 0, others_count = 0;
char input[100];
fgets(input, sizeof(input), stdin); // 读取输入行
for (int i = 0; input[i] != '\0'; i++) { // 遍历输入字符串
if (isalpha(input[i])) { // 检查是否为字母
alpha_count++;
} else if (isspace(input[i])) { // 检查是否为空格
space_count++;
} else if (isdigit(input[i])) { // 检查是否为数字
digit_count++;
} else { // 其他字符
others_count++;
}
}
printf("英文字母: %d\n", alpha_count);
printf("空格: %d\n", space_count);
printf("数字: %d\n", digit_count);
printf("其他字符: %d\n", others_count);
return 0;
}
```
这个程序首先定义四个整型变量用于记录各类字符的数量,然后使用`fgets`从标准输入获取一行字符。接下来遍历输入字符串,使用`isalpha`、`isspace`和`isdigit`函数检查每个字符并更新相应的计数器。最后,它打印出每种字符类型的计数值。
阅读全文