用c语言编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。
时间: 2024-05-14 14:15:27 浏览: 42
好的,以下是代码实现:
```c
#include <stdio.h>
#include <ctype.h>
void count_chars(char* str);
int main() {
char str[100];
gets(str);
count_chars(str);
return 0;
}
void count_chars(char* str) {
int letter_count = 0, digit_count = 0, space_count = 0, other_count = 0;
char c;
int i = 0;
while (str[i] != '\0') {
c = str[i];
if (isalpha(c)) {
letter_count++;
} else if (isdigit(c)) {
digit_count++;
} else if (isspace(c)) {
space_count++;
} else {
other_count++;
}
i++;
}
printf("%d %d %d %d", letter_count, digit_count, space_count, other_count);
}
```
在主函数中,调用 `gets` 函数获取输入的字符串,然后传递给 `count_chars` 函数进行处理。 `count_chars` 函数使用循环遍历字符串中的每个字符,根据其类型统计相应的个数,最后输出结果。其中 `isalpha`、`isdigit` 和 `isspace` 函数用于判断字符类型。
阅读全文