c语言,输入一串字符串分别统计元素类型,并在主函数中调用
时间: 2024-12-23 07:19:36 浏览: 6
在C语言中,统计字符串中各个字符类型的元素并实现这个功能并不直接,因为C语言本身并不支持像Python或JavaScript那样的自动类型识别。但是,你可以创建一个简单的程序来计算ASCII码范围内的字符数量,这通常用于统计英文字符串中的各种字母、数字、空格和其他特殊字符。
以下是一个基本的示例,它会读取用户输入的字符串,然后统计每个ASCII类别(大写字母、小写字母、数字和其它字符)的数量:
```c
#include <stdio.h>
#include <ctype.h>
void count_characters(char *str) {
int uppercase = 0, lowercase = 0, digit = 0, others = 0;
while (*str != '\0') { // 遍历字符串
if (isupper(*str)) { // 如果是大写字母
uppercase++;
} else if (islower(*str)) { // 如果是小写字母
lowercase++;
} else if (isdigit(*str)) { // 如果是数字
digit++;
} else { // 其他字符(包括空格、标点等)
others++;
}
str++; // 移动指针到下一个字符
}
printf("Uppercase letters: %d\n", uppercase);
printf("Lowercase letters: %d\n", lowercase);
printf("Digits: %d\n", digit);
printf("Other characters: %d\n", others);
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin); // 读取字符串,去掉换行符
input[strlen(input) - 1] = '\0'; // 取消fgets添加的换行符
count_characters(input);
return 0;
}
```
阅读全文