while循环语句的问题,大家帮帮忙

下面程序段中循环体执行多少次?
i=0;k=10; while(i=8) i=k--;

答案是死循环!

分析:

while循环体是根据括号里条件的真假来判断是否执行的.为真就执行,为假就退出循环.
而这里 while(i=8) 括号里是个赋值表达式, 结果为i变量的值, 故while(i=8) 等价于 while(8), 而我们知道8为真, 所以又等价于while(1), 故条件一直成立, 所以是个死循环, 或者说无限循环~~~
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-23
无数次!死循环了!

因为i=8是赋值表达式,这个条件一直会成立,所以会一直循环下去。
第2个回答  2010-06-29
while()语句中
while(1)执行,while(0)不执行;
题目中(i=8)把8赋给i永远成立,所以会一直执行,死循环
第3个回答  2010-06-23
这是死循环,执行无限次
第4个回答  2010-06-23
采用 raef_beyond的答案吧。很对
相似回答