这道题目要求输入一个字符串,然后分别统计其中数字、空格、字母及其他字符(除了数字、字母、空格以外的字符)的个数。 用c写
时间: 2023-07-10 13:23:03 浏览: 37
好的,以下是 C 语言的代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[1000];
int i, digits = 0, letters = 0, spaces = 0, others = 0;
printf("请输入一个字符串:\n");
fgets(str, 1000, stdin);
for (i = 0; str[i] != '\0'; i++) {
if (isdigit(str[i])) {
digits++;
} else if (isalpha(str[i])) {
letters++;
} else if (isspace(str[i])) {
spaces++;
} else {
others++;
}
}
printf("数字个数:%d\n", digits);
printf("字母个数:%d\n", letters);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
return 0;
}
```
代码的逻辑比较简单,就是定义了四个变量来分别统计数字、字母、空格和其他字符的个数。然后使用 `fgets()` 函数从标准输入中读取字符串,遍历字符串中的每个字符,根据字符的类型进行计数。最后输出结果即可。需要注意的是,为了避免输入的字符串超过数组大小,这里使用了 `fgets()` 函数来读取字符串。