C语言简单问题for 语句中的所有都要执行一遍么,还是执行到中间的条件判断就break?​

int k, x;
for (k=0, x=0;k<=9&&x!=10;k++)
x+=2;
printf ("%d, %d", k, x) ;

最后K值是等于5还是6? for 语句中的所有都要执行一遍么,还是执行到中间的条件判断就break?

第1个回答  2013-05-19
for的三个表达式中第一个只在最初执行一次,然后判断第二个条件是否成立,成立的话把循环体执行,执行完毕执行第三个表达式,然后继续判断第二个表达式是否成立,决定是否继续执行循环体。。。
所以,当k++变为5时,此时 x 为 10,条件不满足退出,故 k 为 5
第2个回答  2013-05-19
最后k=5,for循环只进行了5次,使fort循环退出的条件是因为x在第5次循环中已经等于10,那么;k<=9&&x!=10这个条件就不成立了,所以退出for循环。

for循环执行的顺序为:
for(语句1;条件;语句2)

语句3;



1.执行语句1
2.判断条件
3.执行语句3
4.执行语句2
5.回到第2步本回答被提问者采纳
第3个回答  2013-05-19
你的问题不清不楚的,都不知道你要问什么。你是想问表达式语句还是问后面的执行语句。
如果你说的是表达式语句,那是全部执行了。如果你说的是执行语句(比如: x+=2;),那就执行大括号{}内所有语句。
第4个回答  2013-05-19
for循环是满足条件-执行-再加1;此循环在x=10结束,说明循环成功执行了5次,分别是k=0,1,2,3,4;k=4执行完,k加1,然后判断不成立,结束;k=5
第5个回答  2013-05-19
条件不成立时跳出。
相似回答