题目:
输出100-200之间的素数 (素数是除了1和它本身不能被其它数整除的数)。
代码实现:
#include <stdio.h>
#include <stdbool.h>
#define START 100
#define END 200
bool Is_prime(int n)
{
int i = 0;
//小于等于1,不是素数
if (n <= 1)
{
return false;
}
//一个数如果可以被2个整除
//则这2个数中,一定至少有1个数小于等于它的平方根
for (i = 2; i * < n; i++)
{
//可以被除1和自身以外的数整除,不是素数
if (n % i == 0)
{
return false;
}
}
//是素数
return true;
}
int main()
{
int i = 0;
int j = 0;
int flag = 0;
for (i = START; i <= END; i++)
{
if (Is_prime(i))
{
printf("%d ", i);
}
//如果i为奇数,那么每次循环+2,因为2以上的偶数不是素数
if (i % 2 != 0)
{
i++;
}
}
return 0;
}