写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述的结果。用c语言写
时间: 2023-11-17 09:59:00 浏览: 52
以下是用 C 语言编写的统计字符串中字母、数字、空格和其它字符个数的函数:
```c
#include <stdio.h>
#include <ctype.h>
void count_chars(char *str, int *letters, int *digits, int *spaces, int *others) {
char c;
while (*str != '\0') {
c = *str++;
if (isalpha(c)) {
(*letters)++;
} else if (isdigit(c)) {
(*digits)++;
} else if (isspace(c)) {
(*spaces)++;
} else {
(*others)++;
}
}
}
int main() {
char str[100];
int letters = 0, digits = 0, spaces = 0, others = 0;
printf("请输入一个字符串:\n");
gets(str);
count_chars(str, &letters, &digits, &spaces, &others);
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其它字符个数:%d\n", others);
return 0;
}
```
函数 `count_chars` 的实现中,使用了 `ctype.h` 头文件中的 `isalpha`、`isdigit` 和 `isspace` 函数来判断字符的类型。在主函数中,使用 `gets` 函数获取输入的字符串,然后调用 `count_chars` 函数统计字符个数,并输出结果。
阅读全文