c语言编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数。在主函数中输入字符串以及输出上述的结果。
时间: 2023-11-17 11:10:29 浏览: 60
以下是C语言代码实现:
```c
#include <stdio.h>
#include <ctype.h>
void countChars(char *str, int *letters, int *digits, int *spaces, int *others) {
while (*str) {
if (isalpha(*str)) {
(*letters)++;
} else if (isdigit(*str)) {
(*digits)++;
} else if (isspace(*str)) {
(*spaces)++;
} else {
(*others)++;
}
str++;
}
}
int main() {
char str[100];
int letters = 0, digits = 0, spaces = 0, others = 0;
printf("请输入字符串:");
fgets(str, 100, stdin);
countChars(str, &letters, &digits, &spaces, &others);
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
return 0;
}
```
在 `countChars` 函数中,使用了 `ctype.h` 头文件中的 `isalpha`、`isdigit` 和 `isspace` 函数来判断字符是否为字母、数字和空格。如果不是这三种字符,则被认为是其他字符。
在主函数中,使用 `fgets` 函数从标准输入中读取字符串,并且将统计结果传递给 `countChars` 函数。最后输出结果。
阅读全文