0$房天下问答|while语句的问题$https://m.fang.com/ask/ask_1849401.html$https://static.soufunimg.com/common_m/m_public/201511/images/asksharedefault.png
packc/pages/ask/detail/detail?askid=1849401
-
while语句的问题
main(){int a=1,b=2,c=2,t;while(a<b<c)(t=a;a=b;b=t;c--;)printf("%d,%d,%d",a,b,c);}为什么答案是1,2,0 是怎么算出来的额?谢谢大家给我个答案吧
更多
共1个回答
-
-
-
uclg_mhcy
丨Lv 0
关键是要正确理解a<b<c同样优先级的操作符顺序是从左到右,所以等价于(a<b)<c循环第1次:a=1,b=2,c=2a<b<c等于(1<2)<2等于1<2,为真,循环内语句执行完后a=2,b=1,c=1循环第2次:a=2,b=1,c=1a<b<c等于(2<1)<1等于0<1,为真,循环内语句执行完后a=1,b=2,c=0循环第3次:a=1,b=2,c=0a<b<c等于(1<2)<0等于1<0,为假,循环结束故最终结果a=1,b=2,c=0
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关注成功