酷代码 AI
菜单
服务商

C++ 筛数法:输出 100 以内素数并统计个数的实现

```cpp #include <iostream> using namespace std; int main() { const int MAX = 101; bool isPrime[MAX]; // 初始化数组,假设所有数都是素数 for (int i = 2; i < MAX; i++) { isPrime[i] = true; } // 筛数法 for (int i = 2; i * i < MAX; i++) { if (isPrime[i]) { for (int j = i * i; j < MAX; j += i) { isPrime[j] = false; } } } int count = 0; // 输出素数并统计个数 for (int i = 2; i < MAX - 1; i++) { if (isPrime[i]) { cout << i << " "; count++; } } cout << endl; // 输出素数个数 cout << count << endl; return 0; } ``` 这段代码首先创建一个布尔类型的数组 `isPrime`,将数组中 2 到 100 的元素初始化为 `true`,表示这些数一开始都假设为素数。然后使用筛数法,从 2 开始,将每个素数的倍数标记为非素数。最后遍历数组,输出所有标记为素数的数,并统计素数的个数,最后输出素数的个数。 ######[AI问答 | 342点数解答 | 2025-12-14 13:00:53]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]