哎呀呀呀呀12138 发表于 2022-4-22 14:25:01

为什么这个while程序会一直运行啊?

本帖最后由 哎呀呀呀呀12138 于 2022-4-22 14:46 编辑

当我输入首字母为大写时,程序即一直运行。当首字母为小写时,屏幕上打印“这句话含有0个大写字母”,然后后面出现的大写字母也就没有再被计数了,这都是为什么呀?


#include <stdio.h>

int main()
{
        int ch, sum = 0;
       
        printf("请输入一行含大写字母的英文句子:");
        ch = getchar();
       
        while (ch >= 'A' && ch <= 'Z')
        {
                sum = sum + 1;
        }
               
        printf("这句话含有%d个大写字母\n",sum);
       
        return 0;
}

一阵三十六 发表于 2022-4-22 16:35:06

因为你的ch 变量没有被修改
举个例子:
ch= 'A';
之后你的程序里,ch 一直是‘A’
页: [1]
查看完整版本: 为什么这个while程序会一直运行啊?