编写函数void count(char c【】)分别统计一个字符串c中字母、数字、空格和其他字符出现的次数?
时间: 2024-12-21 13:23:12 浏览: 5
编写这样的函数,可以分为几个步骤来完成,主要利用ASCII码来判断字符类型。以下是使用C语言的一个示例:
```c
#include <stdio.h>
#include <ctype.h>
void count(char str[]) {
int alpha_count = 0; // 字母计数
int digit_count = 0; // 数字计数
int space_count = 0; // 空格计数
int other_count = 0; // 其他字符计数
for (int i = 0; str[i] != '\0'; i++) { // 遍历字符串
if (isalpha(str[i])) { // 判断是否为字母
alpha_count++;
} else if (isdigit(str[i])) { // 判断是否为数字
digit_count++;
} else if (isspace(str[i])) { // 判断是否为空格
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);
}
// 示例用法
int main() {
char c[] = "Hello, World! 123";
count(c);
return 0;
}
```
这个函数会统计给定字符串 `str` 中各个字符类型的出现次数,并打印结果。
阅读全文