为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

}



正在回答

1 回答

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

2 回复 有任何疑惑可以回复我~
#1

不要香菜6754782

n=4 m=4 时输出不就是4了 为啥里面结果没有4
2021-12-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926210    人
  • 解答问题       20797    个

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

进入课程

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信