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

外循环中自变量m的输出

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

printf("%d\n",m);

  

  }

  return 0;


}

此题中,如果不加条件if(m==n),  因为内循环中if(m%n==0)而跳出后,此时m的值还是会输出 是吗?


正在回答

3 回答

如果去掉if(m==n),对m值没有判断,会输出每一个m值,也就是2~50每一个数;f(m==n)是为了判断跳出的时候n是否等于m,如果不等于,则说明m能整除比自己小比1大的数,也就是说他不是质数。

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

qq_a晓月清风_0 提问者

谢谢您的解答!
2017-05-19 回复 有任何疑惑可以回复我~
#2

后会无期_ 回复 qq_a晓月清风_0 提问者

共同学习^_^
2017-05-21 回复 有任何疑惑可以回复我~

没有if条件的话会输出m值
有if条件的话不会输出m值

0 回复 有任何疑惑可以回复我~

会因为if(m==n)只是把n的值等于给m,m输出相当于n的值.没有这个条件也是可以输出的 个人想法

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

外循环中自变量m的输出

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