用c语言写一个程序,从键盘输入一串字符,分别找出其中的大写字母,小写字母,数字和其他字符的个数
时间: 2024-05-14 16:13:22 浏览: 84
好的,这是一个关于 C 语言的编程问题。可以使用 getchar() 函数逐个读取输入的字符,并使用 isalpha() 和 isdigit() 函数判断字符是否为字母或数字,然后统计各类字符的个数即可。以下是一个简单的代码示例:
```
#include <stdio.h>
#include <ctype.h>
int main() {
int uppercase = 0, lowercase = 0, digit = 0, other = 0;
char c;
printf("请输入一串字符:\n");
while ((c = getchar()) != '\n') {
if (isupper(c)) {
uppercase++;
} else if (islower(c)) {
lowercase++;
} else if (isdigit(c)) {
digit++;
} else {
other++;
}
}
printf("大写字母:%d\n", uppercase);
printf("小写字母:%d\n", lowercase);
printf("数字:%d\n", digit);
printf("其他字符:%d\n", other);
return 0;
}
```
希望这个代码对您有所帮助!
相关问题
用C语言写键盘输入一个字符串,统计其中的大写字母、小写字母、数字字母、其他字符的个数
以下是用C语言实现键盘输入一个字符串,统计其中的大写字母、小写字母、数字字母、其他字符的个数的代码:
```c
#include <stdio.h>
int main() {
char str[100];
int i, upper = 0, lower = 0, digit = 0, other = 0;
printf("请输入一个字符串:");
gets(str);
for (i = 0; str[i] != '\0'; 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 {
other++;
}
}
printf("大写字母个数:%d\n", upper);
printf("小写字母个数:%d\n", lower);
printf("数字个数:%d\n", digit);
printf("其他字符个数:%d\n", other);
return 0;
}
```
首先定义了一个字符数组 `str` 来存储输入的字符串,以及四个整型变量 `upper`、`lower`、`digit`、`other` 来分别统计大写字母、小写字母、数字和其他字符的个数。
然后通过 `gets` 函数获取用户输入的字符串。注意:`gets` 函数不会判断输入的字符串长度,可能会导致缓冲区溢出,因此在实际使用中需要使用更安全的字符串输入函数,比如 `fgets`。
接着使用 `for` 循环遍历字符串中的每个字符,并根据 ASCII 码判断该字符是大写字母、小写字母、数字还是其他字符,并分别对 `upper`、`lower`、`digit`、`other` 变量进行累加。
最后输出各个字符类型的个数即可。
c语言键盘输入一个字符串,统计其中的大写字母、小写字母、数字字母、其他字符
可以编写一个C语言程序来实现这个功能。首先,我们需要定义一个字符数组来存储输入的字符串,然后使用scanf函数来获取用户的输入。
接下来,我们可以使用循环遍历字符串中的每个字符,使用isdigit函数来判断是否是数字字符,使用isupper函数来判断是否是大写字母,使用islower函数来判断是否是小写字母。如果不是数字、大写字母、小写字母,则可以认定为其他字符。
在循环的过程中,我们可以使用计数变量来统计不同类型的字符出现的次数,并最终输出这些统计结果。例如,我们可以定义四个计数变量分别用来统计大写字母、小写字母、数字字母、其他字符的数量。
最后,输出统计结果到屏幕上,告诉用户输入的字符串中包含多少个大写字母、小写字母、数字字母和其他字符。
总的来说,这个程序需要用到循环、判断和计数等基本的编程技巧,可以帮助用户统计输入字符串中不同类型字符的数量,从而更好地理解字符串的组成。
阅读全文