问答详情
源自:4-14 结束语句之break语句

如果把13行去掉 ,为什么就不行 ????

#include <stdio.h>

int main()

{

    int m, n;

    for(m=2; m<=50; m++)

    {

for(n=2; n<m; n++)

        {

            if(    m%n==0    )

            break;//什么条件下跳出当前循环

            //这里应该退出当前循环了

}

        //n循环结束后,如果m=n的话就输出m

            printf("%d  ", m);

}

return 0;    

}

按理来说,当if中判断完能否整除时,这时就已经把m筛选出来的  为什么还要多此一举多加个if(m=n)?????

提问者:慕后端9788028 2016-09-01 17:17

个回答

  • BoolTF
    2016-09-24 16:15:57

    如果没有那一行会把不是素数的数也输出,那一行的作用是判断是否只有一个数能把m整除

  • TheHua
    2016-09-01 18:10:08

    你可以拿几个数代进去运算一下。