int i,j; for(i=0,j=1;i<=j+1;i+=2,j--) 循环几次 很多人是1次 但是答案上是3次 求大神解救

2025-01-02 05:16:50
推荐回答(5个)
回答1:

如果你没写错的话,那就是答案错了!你可以试一下下面程序看输出几个"1“,绝对是一个
#include

int main()
{
int i,j;
for(i=0,j=1;i<=j+1;i+=2,j--)
{
printf("1");
}
}

回答2:

三次!
第一次循环:
i=0,j=1;j+1=2,i=0,i<=j成立;
输出0
i+=2(等同于i=i+2),i=2,j--,j=1

第二次循环:
j+1=2,i=2,i<=j成立;
输出2
i+=2(i=4),i=2,j--,j=1

第三次循环:
j+1=2,i=4,i<=j不成立;退出循环执行后续语句。

回答3:

循环一次,你可以单步调试看看,
第一次i=0;j=1; >>>> 0<=1+1; 循环1次;
第二次 i+2<=(j--)+1 2<=1 不成立 退出循环

回答4:

答案错了,只能循环一次

回答5:

循环了1 次,应该是答案错了