while (status == 1)为啥是数字就可以循环?

img


为啥是数字就可以循环,那如果我真得要判断它等不等于怎么办?他不应该是等于1才能循环吗?有点蒙

status是scanf()函数的返回值赋值的,scanf()函数的返回的是它成功获取输入的个数,所以status等于1说明scanf()函数正确读取了一个数到num变量中,如果输入一个非数字,如输入一个字母,就会返回0,说明从输入正确读取到整数的个数为0,然后就退出计算while循环,把输入的数的和打印出来。
参考链接:
C 库函数 – scanf() | 菜鸟教程

不是你想表达什么。。。
你while 循环想干嘛?不就是为了当条件符合、为true,就执行循环体
那这个条件不就是你自己决定的吗?想等于的时候执行,你就写等于,想小于的时候执行就写小于

因为Scnaf("%d",&sum),这里是%d整形类型,也就是只能输入数字类型的,所以,只有数字时才会执行while()

1楼正解。