#include <stdio.h>
int main()
{
int i, sum;
for(i=1, sum=0; i<=20; i++)
{
if( i%3==0 )
{
continue;
}
sum += i;
}
printf("sum=%d\n", sum);
return 0;
}
i=1时,1%3的结果不为0,进而if语句后的表达式不执行,直接执行sum += i,即0+1
i=2时,1%3的结果不为0,进而if语句后的表达式不执行,直接执行sum += i,即0+1+2
i=3时,1%3的结果为0,进而执行if语句后的表达式 “i%3==0”,接着执行continue语句,然而到了continue这一步时,本次循环中断,不再执行下面的sum += i,直接进行当i=4时的循环。i=3时的sum还是和i=2时的一样,即sum=0+1+2
感谢大佬