质数筛选(打印1~100质数)
xiufanivan · · 个人记录
#include <iostream>
using namespace std;
int main() {
bool is_prime[105];
// 先全部初始化为true
for (int i = 2; i <= 100; i++) {
is_prime[i] = true;
}
// 遍历2~10,其倍数记为false
for (int i = 2; i * i <= 100; i++) {
if (is_prime[i] == true) {
for (int j = i * i; j <= 100; j += i) {
is_prime[j] = false;
}
}
}
// 打印结果
for (int i = 2; i <= 100; i++) {
if (is_prime[i] == true) {
cout << i << " ";
}
}
return 0;
}