用C语言如何判断素数

如题所述

第1个回答  2018-07-24
#include "stdio.h"
int main()
{
int n,flag=1,i;
scanf("%d",&n);//输入一个数n,判断它是否是素数。
if(i>1){//素数是大于1的
for(i=2;i<n;i++)
{
if(n%i==0)// 根据素数的定义n依次除以小于它本身大于1的数
flag=0;//一旦有能被整除的数,表明 n不是素数,使得flag=0 。
}
if(flag==0)//根据flag的值判断n是否是素数
printf("%d不是素数",n);
else
printf("%d是素数",n);
return 0;
}
else{
printf("%d不在素数范围内",n);}

}
第2个回答  2018-07-23

比如这个数为n,简单解释一下这个代码,首先判断素数只需要知道他能不能被一个除1和他本身的数整除,因此我们只需要遍历 2~n这些数,看有没有能被n整除的数,但是我们再进一步想,其实只需要到根号n就可以了,举个例子:6,我们只需要遍历到2,因为6/2=3,6/3=2。最后我们还需要排除一下n=1的情况,因为1既不是质数,也不是合数。将这个思路封装成函数,is_prime(6)会返回0,is_prime(3)会返回1

int is_prime(int n)
    for(int i=2;i*i<=n;i++){
        if(n%i==0 ) return 0;
    return n!=1;
}

第3个回答  2018-07-14
素数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
如上定义得出最简单粗暴的解法(也是最容易理解的)
bool isPrime( int temp)
{
int i;
int prime=temp;

for( i=2 ; i<prime; i++)

{
if( prime%i ==0)//求余得0则能被整除
return FALSE;
}
return TRUE;

}
上述函数传变量temp函数会返回真假值判断是否素数
理解更深的可以简化计算机的运算这里我就不写了,需要的话再跟你写。
第4个回答  2018-06-26
#include <stdio.h>

void prime_number()
{
    int i = 0;
    int j = 0;
    unsigned int a = 0;
 
    printf("\n输入一个自然数:\n");
    scanf("%u", &a);
 
    //素数就是除了1和a本身外没有其他因数
    for (i = 2; i < a; i++)
    {
        if (0 == a%i)
        {
            printf("%u 不是一个质数\n", a);
            return;
        }
    }
 
    printf("%u %s一个质数\n", a, 1==a?"不是":"是");
    return;
}

int main(int argc, char *argv[])
{
    prime_number();
    return 0;
}

第5个回答  2018-08-02
对单个数进行判断是否为素数的话,可以使用循环判断 [2, sqrt(x)] 中的所有整数是否能将 x 除尽。如果没有能整除 x 的数那 x 就是素数。

c语言中素数的判定方法
1、基本方法 最常见的素数判定方法是试除法。即对于给定的正整数n,从2开始逐个除以小于n的数,如果存在能整除n的数,则n不是素数;如果不存在能整除n的数,则n是素数。这种方法的时间复杂度为O(n)。2、优化方法 为了提高素数判定的效率,可以对试除法进行一些优化。例如,可以只试除小于等于n的平方...

c语言判断素数
素数是只能被1和它本身整除的正整数。要判断一个数是否为素数,可以使用试除法:从2到该数的平方根之间依次试除,如能整除,则非素数;否则是素数。以下是C语言实现判断素数的代码:c include include int isPrime(int n) { if (n < 2) return 0; \/\/ 小于2的数不是素数 int i;for (i = ...

C语言如何判断素数?
1、素数的判断。根据素数定义,除了1和本身不存在其它约数的正整数为素数。所以在C语言中判断n是否为素数可以从2开始到到n-1逐一尝试,如果可以整除说明不是素数。更进一步,可以从2判断到n\/2或者n的算术平方根,如果不存在约数,那么即为素数。除此以外,判断素数的算法还有素数筛等。2、判断素数的...

c语言怎么判断素数?
1、首先需要打开vs软件工程,准备好一个空白的C语言文件,引入头文件,主函数中暂时没有内容:2、这里开始编写代码,这里判断素数需要用到平方根,所以要在头文件中引入math库,然后编写判断素数的函数,函数有唯一的参数n,代表素数。判断的依据是素数n只要不能被 2 到根号下n之 间任一整数整除,则n...

c语言如何判断素数
按照如下步骤即可用C语言判断素数:1、首先,打开visual C加加6.0,然后点击左上角的文件,再点击新建。2、接着,在弹出的新建对话框中点击C加加Source File。3、其次在新建的文件文本框中输入预处理命令和主函数,即函数头和空类型。4、再定义变量并输入一个数字,即定义变量的数据类型,输出文字...

判断一个数是否为素数c语言
判断一个数是否为素数c语言,如下:分析:只能被1和它本身整除的整数称为素数。在数学中,要判断n是否为素数,通常让n除以2V的每一个整数,如果,能被2V几的某个整数整除,则说明,不是素数,否则n一定是素数。方法一:用for语Q判断n是否为整数 在这个代码中,我们首先定义了一个名为sprime的函数,...

用C语言编写判断一个数是否是素数的程序
1、打开ubuntu并开启一个终端,输入命令vim is_prime.c,打开编辑页面,输入预处理指令#includestdio.h用于在主函数中调用判断函数。然后定义一个函数int is_prime(int n),即判断整数n是否为素数。2、首先,判断这个数是否小于2.若是,则直接返回0,即表示它不是一个素数。3、然后定义中间的因数i,...

c语言如何判断一个整数是素数。
C语言程序如下:include<stdio.h> int main(){ int i,j,k=0;for(i=2;i<10000;i++){ for(j=2;j*j<=i;j++)if(i%j==0)break;if(j*j>i){ printf("%d ",i);k++;if(k%5==0)printf("\\n");} } }

C语言判断素数
要了解C语言如何判断一个数是否为素数,首先明白素数定义:大于1的自然数,只能被1和它本身整除,不能被其他自然数整除。接下来,我们将通过一个C语言程序来实现这个功能:<?php function isPrime($n) { if ($n <= 1) { return false; \/\/ 1不是素数 } flag = true; \/\/ 假设n是素数 for ...

如何用c语言判断一个数是不是素数
首先要知道素数是不等于1,它的因子只有1和它本身。判断一个数是否为素数,可以用大于1小于给定数的所有数去除给定数,如果有任何一个能够除尽,就表示是合数,反之是素数。下面是具体如何用C语言判断素数的过程:1、打开visual C++ 6.0,点击【文件】-【新建】-【文件】,然后选择【C++ Source File...

相似回答