第一种:基本方法
//4.判断i是否为素数,素数是指只能被1和其本身所整除的数字
//查找1-100之间的素数
#include <math.h>
#include <stdio.h>
int main()
{
int i = 0;
int count = 0;
for (i = 1; i <= 100; i++)
{
//试除法
int j = 0;
for (j = 2; j <= i; j++)
{
if (i%j == 0)
{
break;
}
}
if (j == i)
{
count++;
printf("%d ", i);
}
}
printf("\ncount = %d\n", count);
return 0;
}
第二种: 修改查找的方式,用开平方的方法减小查找次数
int main()
{
int i = 0;
int count = 0;
for (i = 1; i <= 100; i++)
{
//试除法
int j = 0;
for (j = 2; j <= sqrt(i); j++)//开平方
{
if (i%j == 0)
{
break;
}
}
if (j >sqrt (i))
{
count++;
printf("%d ", i);
}
}
printf("\ncount = %d\n", count);
return 0;
}
第三种境界:在奇数中寻找素数
int main()
{
int i = 0;
int count = 0;
for (i = 1; i <= 100; i+=2)//在奇数中寻找素数
{
//试除法
int j = 0;
for (j = 2; j <= i; j++)
{
if (i%j == 0)
{
break;
}
}
if (j == i)
{
count++;
printf("%d ", i);
}
}
printf("\ncount = %d\n", count);
return 0;
}