请问在C语言中这个for循环体的执行次数是几次?为什么?

#include<stdio.h>
void main()
{
int i,j;
for(i=0,j=1;i<=j+1;i+=2,j--)
printf("%d",i);
}
我也觉得是一次,可是答案上选的是3次,不知道为什么

执行一次。
原因如下:
一开始i=0,j=1,由于i<=j+1成立(0<=1)。执行printf语句。然后执行i+=2,j--,则i=2,j=0。
再判断i<=j+1是否成立,此时(2<=1)不成立。则退出循环。
运行过程见表:
值 条件 语句执行后
i, j i<=j+1 i+=2.j--
第1次判断: 0 1 0<=1+1成立 i=2,j=0
第2次判断: 2 0 2<=0+1 不成立
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-17
执行一次:
第一次i=0,0<2;然后i+=2,i=2,j--,j=0
此时i>j (2>0)
循环结束
第2个回答  2011-02-17
第一次 I=0 第二次 i变成2 j变成0 跳出 所以执行一次
第3个回答  2011-02-17
输出几个i ,就循环了几次
第4个回答  2011-02-17
死循环 无数次
相似回答