C语言简单运算过程

来源:百度知道 编辑:UC知道 时间:2024/06/23 15:37:03
#include"stdio.h"
main()
{int i,n=0;
for(i=2;i<5;i++)
{
do
{
if(i%3)continue;
n++;
}while(!i);
n++;
}
printf("n=%d\n",n);
}
哪位能给出正确的分析和运算过程(人脑)~先谢谢了,重要的是分析过程

初始化 n = 0;
for 语句 从2开始到4结束,
那么第一次foe循环,i = 2,n = 0,进入do while循环,此时i%3为2(非0),所以执行 continue,直接退出do while循环,执行第二个n++;
那么第二次for循环,i = 3,n = 1,进入do while循环,此时i%3为0,所以执行第一个n++,到while(!i)因为!i为0,所以退出do while循环,再执行第二个n++,
那么第三次for循环,i = 4,n = 3,进入do while循环,此时i%3为1(非0),所以执行 continue,直接退出do while循环,执行第二个n++;

for循环结束,n结果为4.

i=2, i%3=2, continue, !i=false, n++, n=1;
i=3, i%3=0, n++, n=2, !i=false, n++, n=3;
i=4, i%3=1, continue, !i=false, n++, n=4.

输出n=4