用c语言编一个程序,输入一行字符以字符‘#’作为结束标志,分别统计出英文字母、空格、数字和其他字符的个数。(使用字符数组实现)
时间: 2024-10-24 10:11:27 浏览: 24
为了编一个C语言程序,你可以创建一个简单的命令行应用,使用循环遍历用户输入的字符串,然后利用ASCII码特性来区分字母、空格、数字和其他字符。以下是详细的步骤:
```c
#include <stdio.h>
#include <ctype.h> // 引入ctype头文件,用于处理字符类型
int main() {
char input[100]; // 定义一个字符数组存储用户输入
int alpha_count = 0; // 英文字符计数
int space_count = 0; // 空格计数
int digit_count = 0; // 数字计数
int other_count = 0; // 其他字符计数
printf("请输入一行字符,以'#'结束:\n");
fgets(input, sizeof(input), stdin); // 获取用户输入,并包含换行符
// 遍历输入字符串,检查每个字符并更新计数
for (int i = 0; input[i] != '\0'; i++) { // '\0'表示字符串结束
if (isalpha(input[i])) { // 判断是否为字母(包括大小写)
alpha_count++;
} else if (isspace(input[i])) { // 判断是否为空格
space_count++;
} else if (isdigit(input[i])) { // 判断是否为数字
digit_count++;
} else { // 如果都不是字母、空格和数字
other_count++;
}
}
printf("统计结果:\n");
printf("英文字符: %d\n", alpha_count);
printf("空格: %d\n", space_count);
printf("数字: %d\n", digit_count);
printf("其他字符: %d\n", other_count);
return 0;
}
```
当你运行这个程序,它会提示你输入一行字符,输入结束后会显示各个字符类型的计数。
阅读全文