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

这样的改写思路可不可以?

#include <stdio.h>

int main()

{

    int m, n;

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

    {

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

        {

            if(    m%n==0&&m==n    )

            {

            printf("%d  ", m);

            }

        }

}

return 0;    

}



提问者:iseoks 2021-03-23 22:22

个回答

  • qq_慕侠8332055
    2021-04-04 13:05:38
    已采纳

    不可以,假如m=4,运行下面的for(n=2; n<m; n++) ,当n=2时不满足if,所以if不会执行4%2,而是直接执行n与m相等的数 if运行的就是4%4==0,发现满足if然后跳出循环,然后输出m。可实际上m=4不是个素数