假如一个数是m, 判断它是不是素数就从2到m-1的数都不能被他整除,它只有1和本身两个可以被整除,实际上我们可以直接用m除于2到(m-1)开方,因为如果大于(m-1)开放有个因数,那么(m-1)开方下必定有个因数,所以2到(m-1)开方就能判断是不是素数
程序如下
/*
题目:判断101-200之间有多少个素数,并输出所有素数。
*/
#include <stdio.h>
#include <math.h>
int main(void)
{
int i, m;
for (i=101; i<=200; i++)
{
for(m=2;m<(sqrt(i)); m++)
{
if (i%m == 0)
break;
}
if (m>(sqrt(i)))
printf("%d ", i);
}
return 0;
}