用C语言编写一个函数,统计字符串中字母数字空格和其他字符的个数,在主函数中调用该函数完成统计字符串输入以及结果输出
时间: 2024-02-29 11:52:27 浏览: 89
C语言程序设计-输入一行字符,分别统计出英文大小写字母、空格、数字和其他字符的个数
5星 · 资源好评率100%
以下是用C语言编写的函数,可以实现统计字符串中字母、数字、空格和其他字符的个数:
```c
#include <stdio.h>
#include <ctype.h>
void count_chars(char *str, int *alpha, int *num, int *space, int *other) {
char c;
while (*str != '\0') {
c = *str++;
if (isalpha(c)) {
(*alpha)++;
} else if (isdigit(c)) {
(*num)++;
} else if (isspace(c)) {
(*space)++;
} else {
(*other)++;
}
}
}
int main() {
char str[100];
int alpha = 0, num = 0, space = 0, other = 0;
printf("请输入字符串:");
fgets(str, sizeof(str), stdin);
count_chars(str, &alpha, &num, &space, &other);
printf("字母个数:%d\n数字个数:%d\n空格个数:%d\n其他字符个数:%d\n", alpha, num, space, other);
return 0;
}
```
在主函数中,首先输入字符串,然后调用 `count_chars` 函数,将字符串和各个类型字符的计数器的指针作为参数传递给它。函数内部使用循环遍历字符串中的每个字符,判断它是字母、数字、空格还是其他字符,并累加相应的计数器。最后,在主函数中输出各个类型字符的个数。
阅读全文