酷代码 AI
菜单
服务商

用C++输出:试编一个程序,用筛数法输出100以内所有的素数,并统计个数。 输出 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 开始,将每个素数的倍数标记为非素数。最后遍历数组,输出所有标记为素数的数,并统计素数的个数,最后输出素数的个数。 [2025-12-14 13:00:53 | AI问答 | 342点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多