用c语言解决:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 。
时间: 2024-08-15 11:09:38 浏览: 76
为了用 C 语言解决这个问题,我们可以创建一个程序,它接受用户输入的一行字符,并遍历该字符串来分类计数各种字符。下面是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含标准库函数,用于处理字符类型
int main() {
char input[100]; // 定义足够大的数组存储用户输入
fgets(input, sizeof(input), stdin); // 读取一行输入,包括换行符
int alpha_count = 0; // 英文字母计数
int space_count = 0; // 空格计数
int digit_count = 0; // 数字计数
int other_count = 0; // 其他字符(非字母、空格和数字)计数
for (size_t 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 { // 其他字符
other_count++;
}
}
printf("Number of alphabets: %d\n", alpha_count);
printf("Number of spaces: %d\n", space_count);
printf("Number of digits: %d\n", digit_count);
printf("Number of other characters: %d\n", other_count);
return 0;
}
```
这个程序首先读取用户的输入,然后遍历每个字符,通过 `ctype.h` 中的 `isalpha`、`isspace` 和 `isdigit` 函数判断字符类型。每种类型的字符都会相应地增加对应的计数器。最后,它打印出各类字符的数量。
阅读全文