请问为什么不会把可以整除3的数加进结果???

来源:4-15 结束语句之continue语句

慕圣3392094

2018-11-06 19:24

#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;    

}


写回答 关注

2回答

  • 一入编程深似海啊
    2018-11-06 22:28:19
    已采纳

    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

    慕圣2396...

    遇到continue只会结束本次循环,所以不累加,直接跳到下一次循环,continue以后的语句一律不执行

    2018-12-04 19:39:51

    共 2 条回复 >

  • 慕圣3392094
    2018-11-09 10:00:15

    感谢大佬

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926028 学习 · 20793 问题

查看课程

相似问题