输入一串字符,统计大小写字母,数字字符和其他字符
时间: 2024-10-22 10:07:34 浏览: 35
C++统计中英文大小写字母、数字、空格及其他字符个数的方法
5星 · 资源好评率100%
为了统计字符串中的大写、小写字母、数字字符和其他字符,你可以使用C语言中的`ctype.h`库,该库提供了处理字符类别(如字母、数字)的函数。以下是一个简单的程序示例:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main() {
char str[100];
int uppercase = 0, lowercase = 0, digits = 0, others = 0;
printf("Enter a string: ");
fgets(str, sizeof(str), stdin); // Read input until newline
// Remove the newline character from fgets if present
if (str[strlen(str) - 1] == '\n') {
str[strlen(str) - 1] = '\0';
}
for (size_t i = 0; str[i]; i++) {
if (isupper(str[i])) { // Check if it's an uppercase letter
uppercase++;
} else if (islower(str[i])) { // Check if it's a lowercase letter
lowercase++;
} else if (isdigit(str[i])) { // Check if it's a digit
digits++;
} else { // All other characters (not alphanumeric)
others++;
}
}
printf("Uppercase letters: %d\n", uppercase);
printf("Lowercase letters: %d\n", lowercase);
printf("Digits: %d\n", digits);
printf("Other characters: %d\n", others);
return 0;
}
```
这个程序首先从用户那里获取一个字符串,然后遍历每个字符,检查它是大写字母、小写字母还是数字。如果不是这些类型,它就认为是其他字符。最后,程序打印出每种类型的字符数量。
阅读全文