编写一个两数,由实参传来一个字符申,统计此字符串中大写字母、小写字母、数字、空格和其他字 符的个数,在主函数中輸人字符串以及輸出上述的結果。
时间: 2023-11-17 19:23:03 浏览: 70
好的,这是一个统计字符串中各种字符个数的程序,你可以参考下面的代码实现:
```c
#include <stdio.h>
void countChars(char str[], int *upper, int *lower, int *digit, int *space, int *other) {
int i = 0;
while(str[i]) {
if(str[i] >= 'A' && str[i] <= 'Z') {
(*upper)++;
} else if(str[i] >= 'a' && str[i] <= 'z') {
(*lower)++;
} else if(str[i] >= '0' && str[i] <= '9') {
(*digit)++;
} else if(str[i] == ' ') {
(*space)++;
} else {
(*other)++;
}
i++;
}
}
int main() {
char str[100];
int upper = 0, lower = 0, digit = 0, space = 0, other = 0;
printf("请输入一个字符串:\n");
gets(str);
countChars(str, &upper, &lower, &digit, &space, &other);
printf("大写字母:%d\n", upper);
printf("小写字母:%d\n", lower);
printf("数字:%d\n", digit);
printf("空格:%d\n", space);
printf("其他字符:%d\n", other);
return 0;
}
```
这个程序定义了一个 `countChars` 函数来统计字符串中各种字符的个数,通过指针的方式将结果返回给主函数。然后在主函数中读入一个字符串,并将其传递给 `countChars` 函数进行处理,最后输出统计结果。
需要注意的是,这里使用了 `gets` 函数来读取字符串,但是 `gets` 函数存在安全问题,建议使用更安全的 `fgets` 函数来代替。
阅读全文