为什么while只执行一次,可以解释下吗

img

char ch;    // 定义字符 ch
while((ch=getchar())=='0') {
    printf("#");    // 当输入的字符ch是‘0‘时,输出#
} 

当输入1234567890时,由于ch为char类型,只会从这段流中读取第一个字符'1‘赋值给ch,ch≠‘0’,直接跳过循环体。
希望能帮到你☺!

因为while((ch=getchar())=='0'),进入while循环的条件是 ch == '0',当我们输入1234567890,读入第一个字符是 1 ,ch = '1' ,不满足进入循环的条件,就跳出while循环,在这里代码就结束了。