下面do...while语句执行时,循环次数是【 】 int i=3; do { i--; printf("i=%d\n",i); }while (i!=1);

问题描述:

下面do...while语句执行时,循环次数是【 】 int i=3; do { i--; printf("i=%d\n",i); }while (i!=1);
请解释为什么是循环2次.
2.\x05下面for语句执行时,循环次数是【 】
for (int i=0,j=5;i=j;i++,j--)
printf("i=%d,j=%d\n",i,j);
(A) 0
(B) 5
(C) 10
(D) 无限
这题为什么选B?

int i=3; do { i--; printf("i=%d\n",i); }while (i!=1);
第一次循环结束后 i==22!=1继续下一次循环;
第二次循环结束后 i==1 1==1,不满足i!=1的条件循环停止.
for (int i=0,j=5;i=j;i++,j--)
printf("i=%d, j=%d\n",i,j);
注意看循环条件是i=j;而不是i==j; ,这个i=j的意思就是(i=j)!=0,那么只要j!=0, i就不等于0,j等于0,i就等于0,也就是j==0时,结束循环,每次循环j--,那就是5次后i=j=0;循环也就结束了