吻你不厌 发表于 2020-10-20 10:37:58

疑惑?

#include<stdio.h>

int main()
{
        int i = 0;
       
        printf("请输入一行英文字母:");
        int a;
       
        while ((a = getchar()) != 10)
        {
                if (64 < a < 91)
                {
                        i = i + 1;
                }
        }
        printf("你总共输入了%d个大写字母!\n",i);
       
        return 0;
为什么是int a,而不是char a 呢?

风过无痕1989 发表于 2020-10-20 10:55:30

这是让你使用 ASCII 码

朋友,前面还有帖子没有结,请去结了,选一个最佳答案吧

吻你不厌 发表于 2020-10-20 11:01:43

风过无痕1989 发表于 2020-10-20 10:55
这是让你使用 ASCII 码

朋友,前面还有帖子没有结,请去结了,选一个最佳答案吧

不是都结了吗?

昨非 发表于 2020-10-20 11:51:44

一样的,字符型存储的就是ASCII码数值,
就好比只要以%c格式输出,对应int型ASCII码数值也能输出相应字符

风过无痕1989 发表于 2020-10-20 12:02:17

吻你不厌 发表于 2020-10-20 11:01
不是都结了吗?

不好意思,发错了,是跟“狂想曲”说的

风过无痕1989 发表于 2020-10-20 12:04:23

你这个题,虽然要求你输入的是一串英文字符,但在编译器里会自动转换为ASCII码进行运算,若输出的是大写字母,就进行统计,最后输出
页: [1]
查看完整版本: 疑惑?