xiaohu168888 发表于 2016-2-13 17:48:33

判断是否为素数

#include<stdio.h>
#include<math.h>

void main()
{
      int n,x;
      scanf("%d",&n);
      
      x = function(n);
      if(x==1)
      {
            printf("%d不是素数。\n",n);
      }
      else
      {
            printf("%d是素数。\n",n);
      }
}

intfunction(int n)
{
      int r, w=0,i;
      for(i=2;i<=sqrt(n);i++)
      {
            r = n%i;
            if(r==0)
            {
                  w=1;
                  break;
            }
          else
            {
                  w=0;
            }   这里为什么能够省略,难道系统能自动判断出w的值吗?有点不明白
      }
      return(w);
      
}

小甲鱼 发表于 2016-2-13 18:04:42

初始化的时候 w 不是已经赋值为 0 了吗?

只有条件符合,w 才被赋值为 1,否则 w 一直都是 0。

xiaohu168888 发表于 2016-2-13 21:17:33

小甲鱼 发表于 2016-2-13 18:04
初始化的时候 w 不是已经赋值为 0 了吗?

只有条件符合,w 才被赋值为 1,否则 w 一直都是 0。

哦,谢谢甲鱼老师的帮助!
页: [1]
查看完整版本: 判断是否为素数