您的位置首页百科知识

c语言学习:[1]判断一个数是否为素数

c语言学习:[1]判断一个数是否为素数

的有关信息介绍如下:

c语言学习:[1]判断一个数是否为素数

用c语言判断一个数是否为素数的几种方法。所用编程环境Microsoft Visual C++。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除(除0以外)的数称之为素数,也叫质数。

#include

void main()

{

int i,n;

printf("请输入n:");

scanf("%d",&n);

i=2;

while(i

{

if(n%i==0)

break;

i++;

}

if(i==n)

printf("%d is prime\n",n);

else

printf("%d is no prime\n",n);

}

输出结果如下图:

#include

void main()

{

int n,r,i;

scanf("%d",&n);

for(i=2;i<=n-1;i++)

{

r=n%i;

if(r==0) break;

}

if(i>=n)

printf("yes\n");

else

printf("no\n");

}

输出结果如下图:

初等数论,一个整数不能整除他的平方数之内的整数就是素数。

编程代码

#include

#include

#define YES 1

#define NO 0

int IsPrime(int N)

{

int i, j;

if (N == 2)

return YES;

else

if (N < 2 || N % 2 ==0)

return NO;

else

{

j = (int)sqrt(N + 1);

for (i = 3; i <= j; i = i + 2)

if (N % i == 0)

return NO;

}

return YES;

}

void main()

{

int N;

printf("Please input a number: ");

scanf("%d", &N);

if (IsPrime(N) == YES)

printf("%d is a prime number\n", N);

else

printf("%d is not a prime number\n", N);

}

输出结果如下图: