P2185判断质数问题的C++代码实现
以下是解决该问题的C++代码: ```cpp #include <iostream> using namespace std; int main() { int n; // 输入正整数n cin >> n; // 如果n小于等于1,直接不是质数,没有第二小约数,这里可根据需求处理,本题可认为无意义输入 if (n <= 1) { return 0; } // 从2开始遍历找约数 for (int i = 2; i * i <= n; i++) { if (n % i == 0) { // 找到约数,说明不是质数,输出第二小约数 cout << i << endl; return 0; } } // 没有找到除1和自身外的约数,是质数 cout << "Yes" << endl; return 0; } ``` ### 代码解释 1. **输入处理**:使用`cin`读取用户输入的正整数`n`。 2. **特殊情况处理**:如果`n`小于等于1,由于质数定义是大于1的自然数,这里可根据需求进行相应处理,本题直接结束程序。 3. **寻找约数**:从2开始遍历到`sqrt(n)`(通过`i * i <= n`实现),如果`n`能被`i`整除,说明`n`不是质数,输出`i`(即第二小约数)并结束程序。 4. **判断质数**:如果遍历完都没有找到除1和自身外的约数,说明`n`是质数,输出`Yes`。 ######[AI问答 | 396点数解答 | 2026-03-22 16:54:08]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343
- JS 代码:判断“red”改值为“green”并弹窗显示结果( | 176点数解答 | 2024-05-20 21:33:04)414
- 用 JS 代码巧妙判断 a 与 b 关系:输出对应结果 ( | 47点数解答 | 2024-05-20 22:10:14)323
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)310
- 用 JS 中 for 循环实现 1 到 100 相加并输出结果到页面的完整代码 ( | 240点数解答 | 2024-05-20 22:11:29)459
- 用 JS 的 while 循环实现 1 到 100 相加并输出到页面的代码揭秘( | 47点数解答 | 2024-05-20 22:16:48)355
- Python 程序:轻松判断输入数字是否为质数(字节豆包 | 151点数解答 | 2024-11-15 10:51:48)195
- Python 实现:轻松判断输入数字是否为质数(阿里通义 | 352点数解答 | 2024-11-15 11:06:22)164
- Python 破解:求大于 2 偶数对应最小质数对差值的秘籍(字节豆包 | 517点数解答 | 2025-12-06 21:03:18)66
- Python 实现:输入整数 N 判断是否为质数,附代码详解!(DeepSeek | 126点数解答 | 2026-01-11 17:32:14)35
- 巧用筛法!计算 N 到 M 间数的最大质因数个数(DeepSeek | 245点数解答 | 2026-01-18 12:43:51)38
- Python实现合数分解质因数并输出质因数个数(字节豆包 | 318点数解答 | 2026-02-28 12:32:36)18