c语言键盘输入一个字符串,统计其中的大写字母、小写字母、数字字母、其他字符
时间: 2023-12-14 07:00:34 浏览: 131
可以编写一个C语言程序来实现这个功能。首先,我们需要定义一个字符数组来存储输入的字符串,然后使用scanf函数来获取用户的输入。
接下来,我们可以使用循环遍历字符串中的每个字符,使用isdigit函数来判断是否是数字字符,使用isupper函数来判断是否是大写字母,使用islower函数来判断是否是小写字母。如果不是数字、大写字母、小写字母,则可以认定为其他字符。
在循环的过程中,我们可以使用计数变量来统计不同类型的字符出现的次数,并最终输出这些统计结果。例如,我们可以定义四个计数变量分别用来统计大写字母、小写字母、数字字母、其他字符的数量。
最后,输出统计结果到屏幕上,告诉用户输入的字符串中包含多少个大写字母、小写字母、数字字母和其他字符。
总的来说,这个程序需要用到循环、判断和计数等基本的编程技巧,可以帮助用户统计输入字符串中不同类型字符的数量,从而更好地理解字符串的组成。
相关问题
C语言键盘输入一个字符串,统计其中的大写字母、小写字母、数字字母、其他字符的个数。
下面是一个C语言程序,可以实现键盘输入一个字符串,然后统计其中的大写字母、小写字母、数字字母、其他字符的个数。
```c
#include <stdio.h>
int main() {
char str[100];
int i, uppercase_letters, lowercase_letters, digits, other_chars;
uppercase_letters = lowercase_letters = digits = other_chars = 0;
printf("请输入一个字符串:");
scanf("%s", str);
for (i = 0; str[i] != '\0'; i++) {
if (str[i] >= 'A' && str[i] <= 'Z') {
uppercase_letters++;
} else if (str[i] >= 'a' && str[i] <= 'z') {
lowercase_letters++;
} else if (str[i] >= '0' && str[i] <= '9') {
digits++;
} else {
other_chars++;
}
}
printf("大写字母个数:%d\n", uppercase_letters);
printf("小写字母个数:%d\n", lowercase_letters);
printf("数字个数:%d\n", digits);
printf("其他字符个数:%d\n", other_chars);
return 0;
}
```
这个程序中,首先定义了一个字符数组 `str`,用来存储输入的字符串。然后定义了4个变量 `uppercase_letters`、`lowercase_letters`、`digits`、`other_chars`,分别用来统计大写字母、小写字母、数字和其他字符的个数。这里使用了多重赋值语句,将这4个变量都初始化为0。
程序通过 `scanf` 函数从键盘读取输入的字符串,然后使用 `for` 循环遍历字符串中的每一个字符。在循环中,使用 `if-else` 语句判断当前字符是大写字母、小写字母、数字还是其他字符,然后相应的变量加1。最后,输出各个变量的值,即为统计结果。
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`,用于存储输入的字符串。然后使用 `gets()` 函数从标准输入流中读取该字符串。接着使用 `for` 循环遍历字符串中的每个字符,根据其 ASCII 码值判断其属于哪一类字符,并分别累加其个数。最后输出各类字符的个数即可。需要注意的是,输入的字符串长度不能超过 `str` 数组的容量,否则会出现数组越界的错误。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)