用c语言编写一函数,由实参传递一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串并输出上述结果
时间: 2025-01-02 07:47:05 浏览: 15
在C语言中,你可以编写一个函数来实现这个功能。首先,需要包含`ctype.h`头文件,它包含了处理字符类型的函数。下面是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
// 函数声明,接受一个字符串作为参数
void count_chars(char *str);
int main() {
char input[100];
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // 防止超长输入,不包括换行符
input[strcspn(input, "\n")] = '\0'; // 删除fgets获取的换行符
count_chars(input);
return 0;
}
// 统计字符的函数
void count_chars(char *str) {
int alpha_count = 0; // 字母计数
int digit_count = 0; // 数字计数
int space_count = 0; // 空格计数
int other_count = 0; // 其他字符计数
for (char c : str) {
if (isalpha(c)) { // 判断是否为字母
alpha_count++;
} else if (isdigit(c)) { // 判断是否为数字
digit_count++;
} else if (isspace(c)) { // 判断是否为空格
space_count++;
} else { // 其他字符(如标点、特殊字符等)
other_count++;
}
}
printf("字母数量: %d\n", alpha_count);
printf("数字数量: %d\n", digit_count);
printf("空格数量: %d\n", space_count);
printf("其他字符数量: %d\n", other_count);
}
```
当你运行这个程序,并在提示后输入一个字符串时,它会统计其中的字母、数字、空格以及非这三种字符的数量并显示出来。
阅读全文