题目要求输入一组字符,以回车结尾,统计其中字母(包括大写和小写)、数字、空格以及其他字符的个数。
时间: 2023-07-10 19:15:10 浏览: 88
输入一个字符串,统计出这个字符串的英文大写字母、小写字母、数字、空格以及其它字符的个数
5星 · 资源好评率100%
好的,我来给你解答。
首先,我们可以使用C语言中的字符数组来存储输入的字符串。然后,我们可以定义四个变量,用来分别记录字母、数字、空格和其他字符的个数。接着,我们对输入的字符串进行遍历,对每个字符进行分类统计。最后,输出各个字符的个数即可。
下面是一个示例代码:
```c
#include <stdio.h>
int main() {
char str[100];
int i, num_alpha = 0, num_digit = 0, num_space = 0, num_other = 0;
printf("请输入一组字符(以回车结束):\n");
fgets(str, sizeof(str), stdin);
for (i = 0; str[i] != '\0'; i++) {
if (str[i] >= 'a' && str[i] <= 'z' || str[i] >= 'A' && str[i] <= 'Z') {
num_alpha++;
} else if (str[i] >= '0' && str[i] <= '9') {
num_digit++;
} else if (str[i] == ' ') {
num_space++;
} else {
num_other++;
}
}
printf("字母个数:%d\n", num_alpha);
printf("数字个数:%d\n", num_digit);
printf("空格个数:%d\n", num_space);
printf("其他字符个数:%d\n", num_other);
return 0;
}
```
注意,我们使用了`fgets()`函数来读取输入的字符串,因为它可以避免缓冲区溢出的问题。同时,我们也需要注意特殊字符(如换行符)的处理。
阅读全文