用c语言,编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。
时间: 2023-11-17 20:58:12 浏览: 90
C语言程序设计-输入一行字符,分别统计出英文大小写字母、空格、数字和其他字符的个数
5星 · 资源好评率100%
以下是一个简单的C语言函数,可以实现统计字符串中字母、数字、空格和其他字符的个数:
```c
#include <stdio.h>
#include <ctype.h>
void count_chars(char *str) {
int letters = 0, digits = 0, spaces = 0, others = 0;
char *p = str;
while (*p != '\0') {
if (isalpha(*p)) {
letters++;
} else if (isdigit(*p)) {
digits++;
} else if (isspace(*p)) {
spaces++;
} else {
others++;
}
p++;
}
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
}
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, 100, stdin);
count_chars(str);
return 0;
}
```
在这个函数中,我们使用了四个变量来分别统计字母、数字、空格和其他字符的个数。在字符串中循环遍历每个字符,使用`isalpha`、`isdigit`和`isspace`函数来判断该字符是字母、数字还是空格,如果不是这三种情况,则认为是其他字符。最后输出统计结果。在主函数中,使用`fgets`函数从标准输入读取字符串,并调用`count_chars`函数进行统计。
阅读全文