1.题目
输入一行字符,分别统计出大写英文字母、数字,其他字符和字符总数的个数,并输出统计的结果。
2.思路
我们可以使用 `getchar()` 函数来一次读取一行字符,然后使用 `if-else` 分支语句对每个字符进行分类计数,最后输出统计结果。具体思路如下:
1. 声明三个计数器变量,分别用于统计大写字母、数字和其他字符的个数。
2. 使用 `getchar()` 函数读取一行字符,并计算字符总数。
3. 遍历读取的每个字符,对其进行分类计数:
- 如果是大写字母,则将大写字母计数器加 1。
- 如果是数字,则将数字计数器加 1。
- 如果是其他字符,则将其他字符计数器加 1。
4. 输出统计结果,分别输出大写字母、数字、其他字符和总字符数。
下面让我们来实现代码吧~
3.代码实现
#include <stdio.h>
int main() {
char c;
int uppercase_count = 0, digit_count = 0, other_count = 0, total_count = 0;
printf("请输入一行字符:");
while ((c = getchar()) != '\n')
{
total_count++; // 统计字符总数
if (c >= 'A' && c <= 'Z')
{
uppercase_count++; // 统计大写字母个数
}
else if (c >= '0' && c <= '9')
{
digit_count++; // 统计数字个数
}
else
{
other_count++; // 统计其他字符个数
}
}
printf("大写字母的个数:%d\n", uppercase_count);
printf("数字的个数:%d\n", digit_count);
printf("其他字符的个数:%d\n", other_count);
printf("总字符数:%d\n", total_count);
return 0;
}