素数的概念
质数(prime number)又称素数,有无限个。
质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
判断素数
因为素数是一个除了一和它本身不能被其他数整除的数,所以判断是否为素数只需判断出他是否还能被其他数整除。
判断方法为用数字n循环的被2 ~ n-1的每一个数整除。
int n;
scanf("%d",&n); //接收需要判断的数字
for (int i = 2; i <= i; i++)
{
if (n%i == 0) break; //用2~n的数整除n,能被整除就跳出循环
}
if (i == n) //如果是被自己整除则是素数
{
printf("%d是素数\n", n);
}
如果要判断在某段数字区间内有多少个素数,可再加一层循环语句。
如:判断0-200之间的素数并输出
代码如下
#include<stdlib.h>
#include<stdio.h>
int main()
{
int i, j;
int count = 0;
for (i = 0; i <= 200; i++) //第一层循环循环0-200对每个数字进行判断
{
for (j = 2; j <= i; j++) //第二层循环判断是否素数
{
if (i%j == 0) break; //能被整除跳出里层循环
}
if (i == j) //如果是被自己整除则为素数
{
count++; //计算素数个数
printf("%d\n", i); //输出素数
}
}
printf("在0-100中一共有%d个素数",count);
return 0;
}