#include <stdio.h>
#include <stdbool.h>
//定义判断是否为素数的函数
bool isPrime(int num)
{
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main()
{
for (int num = 100; num <= 200; num++) {
if (isPrime(num)){
printf("%d ", num);
}
}
return 0;
}
其中的函数使用了素数的定义和性质来检查一个数是否为素数。素数是一个大于1的自然数,除了1和它本身以外不再有其他因数。
具体的实现思路如下:
1.我们从2开始,一直检查到小于等于这个数的平方根的所有整数,看它们是否能够整除这个数。
2.之所以只需要检查到平方根,是因为一个非素数必定可以表示为两个因数的乘积,如果这两个因数都大于这个数的平方根,那么它们的乘积会大于这个数,所以我们只需要检查到平方根即可。
3.如果我们找到了一个可以整除这个数的因数,那么这个数就不是素数,我们返回false
。
4.如果我们没有找到任何可以整除这个数的因数,那么这个数就是素数,我们返回true
。