用C语言如何判断素数

 我来答
向幸福开门
2018-07-15 · 超过28用户采纳过TA的回答
知道答主
回答量:79
采纳率:80%
帮助的人:30.5万
展开全部

判断素数比较简单,首先你得知道,那些数属于素数,根据素数的定义,我们知道素数是指除了0与1之外,仅能被1和本身整除的数。那么我们直接依次进行判断就好了,代码如下:

bool isleap(int n){
    bool ok=true;
    if(n<=1) ok=false;
    for(int i=2;i<n;i++){
        if(n%i==0) ok=false;
    }
    if(!ok) return false;
    else return true;
}

以上只是判断一个数是否为素数的函数,当然了,也还可以优化一下,但是这样写,更加便于你理解,有问题请追问。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2018-07-09
展开全部
#include<stdio.h>
int main()
{
    int n;//将要判断的数
    scanf("%d",&n);
    if(n<2)//素数是大于1的自然数,小于2的话就不判断了。
    {
        printf("输入数据不合法");
        return 0;
    }
    if(n==2||n==3||n==5)//先将几个比较小的素数挑出来
    {
        printf("%d是素数",n);
    }
    for(int i=2;i<n;i++)//真正的判断过程,注意这里的i<n,除了1与数本身,其他数都不能整除它的数才是素数
    {
        if(n%i==0)//有任何一个中间的数能整除它,它就不是素数。
        {
            printf("%d不是素数",n);
            return 0;//若当前数不是素数,直接退出程序,下面的代码便不会执行
        }
    }
    printf("%d是素数",n);//若成功的运行到了这里,那么当前数是素数。
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老猴子不会胖
2018-06-26 · TA获得超过267个赞
知道小有建树答主
回答量:286
采纳率:81%
帮助的人:58.6万
展开全部

除了1 和本身 不能被整除

从1开始到本身,挨个判断整除,记录能整除的次数,次数为2的是素数

#include<stdio.h>
int  main()
{
    int i,a,j=0;
    printf("input one number:\n");
    scanf("%d",&a);
    for(i=1;i<=a;i++)
        if(a%i==0) j++;
    if(j==2) printf("yes");
    else printf("no");
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
米烟0O
2018-06-29 · 超过17用户采纳过TA的回答
知道答主
回答量:58
采纳率:50%
帮助的人:23万
展开全部
素数的定义是只能被自己和1整除。因此,如果待求数为N,则对于任意1<i<N,素数都不能整除。
bool PrimeCheck(int n){
if(n < 1){
return false;

}
for(int i = 2; i < n; i++){
if(n % i == 0){ //一旦出现能够整除的数就不是素数
return false;

}

}
return true; //遍历结束都没有能够整除的,则为素数
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2018-07-06
展开全部

根据素数的定义看,除了1和自身,不能被任何数整除,那判断一个数就把它从2一直除到比自己小1的数,看看有没有能整除的

例:

#include<stdio.h>

void main()
{
    int a;
    printf("输入你要判断的数:");
    scanf("%d",&a);
    for(int i=2;i<a;i++)
    {
        if(a%i==0)
        {
            printf("该数不是素数哦!");
            exit(0);
        }
    }
    printf("该数就是素数哦!");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式