从键盘输入C语言风格字符串abCD123□□@#&,利用函数统计其中英文字符、数字、空格和其他字符的个数。
时间: 2024-10-20 18:03:24 浏览: 16
在C语言中,你可以创建一个函数来完成这个任务。下面是一个简单的示例,它会定义一个函数`countCharacters(char* str)`,接收一个字符串指针作为输入,并返回四个整数,分别表示英文字符、数字、空格和其他字符的数量。
```c
#include <ctype.h>
// 函数原型
void countCharacters(char* str, int* charCount, int* digitCount, int* spaceCount, int* otherCount);
int main() {
char input[] = "abCD123□□@#&";
int charCount = 0;
int digitCount = 0;
int spaceCount = 0;
int otherCount = 0;
// 调用函数并传递结果指针
countCharacters(input, &charCount, &digitCount, &spaceCount, &otherCount);
printf("英文字符: %d\n", charCount);
printf("数字: %d\n", digitCount);
printf("空格: %d\n", spaceCount);
printf("其他字符: %d\n", otherCount);
return 0;
}
// 统计函数
void countCharacters(char* str, int* charCount, int* digitCount, int* spaceCount, int* otherCount) {
while (*str != '\0') { // 遍历字符串直到遇到结束符
if (isalpha(*str)) { // 检查是否为字母
(*charCount)++;
} else if (isdigit(*str)) { // 检查是否为数字
(*digitCount)++;
} else if (*str == ' ') { // 检查是否为空格
(*spaceCount)++;
} else { // 其他字符(非字母、数字、空格)
(*otherCount)++;
}
str++; // 移动到下一个字符
}
}
```
阅读全文