#include <stdio.h>
#include <math.h>
//写一个代码:打印100-200之间的素数
//素数 - 质数
//只能被i和它本身整除
//写法1:
int main()
{
int i = 0;
for ( i = 100; i < 200; i++)
{
//判断i是否为素数
//2->i-1之间的数字去试除i,看能不能整除
int j = 0;
for ( j = 2; j < i; j++)
{
if (i % j == 0)
{
break;
}
}
//检测是不是i==j跳出来的循环
if (i == j)
{
printf("%d", i);//素数
}
}
return 0;
}
#include <stdio.h>
#include <math.h>
//写法2:
int main()
{
int count = 0;
int i = 0;
//m=a*b
//a和b中一定至少有一个数字是<=开平方m的
//16 = 2*8 = 4*4
for (i = 101; i <= 200; i+=2)//偶数一定是不是素数,非偶数每次+2
{
//判断i是否为素数
//2->i-1之间的数字去试除i,看能不能整除
int j = 0;
int flag = 1;//假设i就是素数
for (j = 2; j <= sqrt(i); j++)
{
if (i % j == 0)
{
flag = 0;//不是素数
break;
}
}
//检测是不是i==j跳出来的循环
if (flag == 1)
{
count++;
printf("%d ", i);//素数
}
}
printf("\ncount = %d\n", count);
return 0;
}