for循环的循环控制变量不一的问题?

来源:百度知道 编辑:UC知道 时间:2024/05/31 03:31:14
main()
{
intx=10,y=10,i;
for(i=0;x>8;y=++i)
printf("%d%d",x--,y);
}
程序的执行过程是如何的?

for循环的3个循环条件中只有第2个是真正意义的条件,其他2个都是辅助性的,比如:
for(i=0;i<3;i++){x++;}
这个其实可以写做
i=0;
for(;i<3;){x++; i++;}
同理,你问题里的那段循环代码,循环跳出条件只跟x有关

执行的过程就是
第一次:x=10 y=10 输出 1010
x自减,y=++i
第二次:x=9 y=1 输出 91
x自减,y=++i
第三次:x=8 不满足条件跳出循环