谁能给我讲下这段C语言的执行过程?

来源:百度知道 编辑:UC知道 时间:2024/06/05 22:28:36
for(i=1;i<=5;i++)
{
if(i%3)printf("A");
else continue;
printf("B");
}
printf("C");

结果是ABABABABC但是我不明白过程是怎样的

i的初值是1,
1.首先i=1,判断i<=5,条件符合,执行{}中的内容:i%3=1 printf("A");接着printf("B");
i++;
2.i=2, 判断i<=5,条件符合,执行{}中的内容:i%3=2 printf("A");接着printf("B");
i++;
3.i=3, 判断i<=5,条件符合,执行{}中的内容:i%3=0 执行else
i++;
4.i=4, 判断i<=5,条件符合,执行{}中的内容:i%3=1 printf("A");接着printf("B");
i++;
5.i=5, 判断i<=5,条件符合,执行{}中的内容:i%3=2 printf("A");接着printf("B");
i++;
6.i=6, 判断i<=5,条件不符合结束循环。
printf("C");
则输出结果就为ABABABABC
说明:基本语句如楼上。

1 关键语句:i%3.
其中%是取模的意思,比如i=1,2,3,4时,i%3的结果分别是:1,2,0,1。
取模就是i除以3的余数。
2 if语句
条件只要非0,都是true,即if(1) if(2) 都会返回真,会打印出来A。
3 continue
这个是跳过循环体之后的代码(不执行print B),直接返回到for的i++执行。

结果应该是ABABABABABC吧?