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

找出0-50之间的所有素数,看不懂取素数的代码的具体意思

#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;      //这里应该退出当前循环了

}

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

            printf("%d  ", m);

}

return 0;    

}

看不懂这代码   卡在这里了   希望大佬们跟我仔细的解释一下那串代码,还有怎么取素数的,帮我度过难关吧!就此谢过!!!

提问者:福瑞斯戴尔 2017-10-20 10:38

个回答

  • 驰骋天涯3614291
    2017-10-20 10:59:18
    已采纳

    你先看两个循环,第一个循环参数是m,第二个循环参数是n,这样循环两次的目的是为什么呢,就是找到0~m之内的能被m整除的数,后面做了一个判断,如果找到的只有m本身能被自己整除,这说明它是素数,反之,找到了其他能被m整除的数,自然不会输出。