
请问在C语言中这个for循环体的执行次数是几次?为什么?
#include<stdio.h>voidmain(){inti,j;for(i=0,j=1;i<=j+1;i+=2,j--)printf("%d",i);}我也觉得是一...
#include<stdio.h>
void main()
{
int i,j;
for(i=0,j=1;i<=j+1;i+=2,j--)
printf("%d",i);
}
我也觉得是一次,可是答案上选的是3次,不知道为什么 展开
void main()
{
int i,j;
for(i=0,j=1;i<=j+1;i+=2,j--)
printf("%d",i);
}
我也觉得是一次,可是答案上选的是3次,不知道为什么 展开
6个回答
展开全部
执行一次。
原因如下:
一开始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 不成立
原因如下:
一开始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 不成立
展开全部
执行一次:
第一次i=0,0<2;然后i+=2,i=2,j--,j=0
此时i>j (2>0)
循环结束
第一次i=0,0<2;然后i+=2,i=2,j--,j=0
此时i>j (2>0)
循环结束
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一次 I=0 第二次 i变成2 j变成0 跳出 所以执行一次
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
死循环 无数次
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询