一、什么是素数:
素数(prime number)又称质数,有无限个。一个大于1的自然数,除了1和它本身外(因为1既不是素数,也不是合数),不能被其他自然数(质数)整除,换句话说就是该数除了1和它本身以外不再有其他的因数.
比如:2,3,5,7,11,…等。
二、如何判断一个数是否为素数:
该数除了1和它本身以外不再有其他的因数,通俗的讲,就是只能被1和这个数本身整除,不能被其它数整除
代码实现:
for (j = 2; j<i; j++)//j不能从1开始,因为1能整除任何数,所以j从2开始
{
if (i%j == 0)
break;
if (i == j)
printf("%d ", i);
}
三、找出1-N之间的素数:
实现思路:
先判断这个数是否为素数,如果是,输出这个数,如果不是,则判断下一个数是不是素数;
代码实现:
void FindSuShu(int n)
{
int i = 0, j = 0;
int count = 0;
for (i = 1; i <= n; i++)
{
for (j = 2; j < i; j++)
{
if (i%j == 0)
break;
}
if (i == j)
{
printf("%d ", i);
count++;
if (count % 5 == 0)
printf("\n");
}
}
}
int main()
{
int n = 0;
scanf("%d", &n);
FindSuShu(n);
printf("\n");
return 0;
}