永发信息网

写一个函数int prime(int x),判断数值x是否素数,如果是返回1,否则返回0。

答案:3  悬赏:10  手机版
解决时间 2021-01-27 15:48
  • 提问者网友:战皆罪
  • 2021-01-27 11:58
写一个函数int prime(int x),判断数值x是否素数,如果是返回1,否则返回0。
最佳答案
  • 五星知识达人网友:忘川信使
  • 2021-01-27 12:20
#include 

// 是否是素数 
int prime(int x)
{
    if(x < 2)
    {
        return 0;
    }
    for (int i=2;i*i<=x;i++)
    {
        if(x % i == 0)
        {
            return 0;
        }
    }
    return 1;
}

int main()
{
    if (0 == prime(12461))
    {
        printf("12461 不是 素数
");
    }
    else{

        printf("12461 是 素数
");
    }
    return 0;
}运行结果如下:



欢迎采纳!
全部回答
  • 1楼网友:山君与见山
  • 2021-01-27 15:01
int prime(int x)
{
    int half = x/2;
    
    int i = 3;
    if ((x % 2) == 0 && (x != 2))
    {
        return 0;
    }
    if (x == 2)
    {
        return 1;
    }
    
    for (;i <= half;i+= 2)
    {
        if ((x % i) == 0)
        {
            return 0;
        }
    }
    return 1;
}
  • 2楼网友:十年萤火照君眠
  • 2021-01-27 13:42
#include
int prime(int x)
{
int i;
for(i=2;i<=sqrt(x);i++)
{
if(x%i==0)
return 0;
}
return 1;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯