While语句
初等数论法的思路
-
初等数论,一个整数不能整除他的平方数之内的整数就是素数。
编程代码
#include <stdio.h>
#include <math.h>
#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);
}
输出结果如下图:
END