c语言编写一个函数,统计一个输入字符串中字母、数字、空格和其他字符的个数
时间: 2023-11-19 21:09:58 浏览: 113
C语言程序设计-输入一行字符,分别统计出英文大小写字母、空格、数字和其他字符的个数
5星 · 资源好评率100%
可以使用C语言中的字符函数库ctype.h中的函数来判断字符的类型。具体实现如下:
```c
#include <stdio.h>
#include <ctype.h>
void countChars(char *str, int *letters, int *digits, int *spaces, int *others) {
while (*str) {
if (isalpha(*str)) { // 判断字母
(*letters)++;
} else if (isdigit(*str)) { // 判断数字
(*digits)++;
} else if (isspace(*str)) { // 判断空格
(*spaces)++;
} else { // 其他字符
(*others)++;
}
str++; // 指针后移
}
}
int main() {
char str[100];
int letters = 0, digits = 0, spaces = 0, others = 0;
printf("请输入字符串:");
gets(str); // 读入字符串
countChars(str, &letters, &digits, &spaces, &others);
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
return 0;
}
```
注意,上述代码使用了gets函数读入字符串,但是gets函数有安全性问题,可以使用fgets函数替代。同时,由于C语言中没有字符串类型,所以我们使用字符数组来表示字符串。
阅读全文