第一种写法
while(true)//死循环,通过if的条件判断来跳出该死循环
cin>>x;
if(!x);break;//!x 等价于 x等于0
第二种写法
while(cin>>x && x)//cin本身有返回值,当cin读取到0的时候表示读到了文件结束符,
这个&&x表示判断x是否为0。即读入0时结束循环
第三种写法
while(cin>>x,x)//1,用逗号隔开的表达式叫做逗号表达式
特点:逗号表达式的值等于最后表达的值
举例,当cin>>x输入一个0循环结束后 (,x)的数值就等于0
第四种写法
while(scanf(“%d”,&x) != -1)//scanf如果读到返回值,scanf返回数值为-1
//注 不等于负1有等价写法
~scanf(“%d”,&x)为不等于-1的等价写法