酷代码 AI
菜单
服务商

C语言实现:判断不超百万正整数是否为素数及开发注意要点

```c #include <stdio.h> #include <stdbool.h> // 该函数用于判断一个数是否为素数 bool isPrime(int num) { // 素数定义要求大于1 if (num <= 1) { return false; } // 从2开始到sqrt(num)检查是否有能整除num的数 for (int i = 2; i * i <= num; i++) { if (num % i == 0) { return false; } } return true; } int main() { int N; // 读取用户输入的正整数 scanf("%d", &N); // 调用isPrime函数判断是否为素数 if (isPrime(N)) { printf("YES\n"); } else { printf("NO\n"); } return 0; } ``` 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 素数的定义是大于1的自然数,所以在判断时要先排除小于等于1的数。 2. 在循环检查因数时,循环到sqrt(num)即可,因为如果num有大于sqrt(num)的因数,那么必然有一个小于sqrt(num)的因数与之对应。 3. 输入的数要确保在规定的范围(不大于1000000)内,虽然本代码未对范围做额外检查,但在实际应用中可能需要添加边界检查。 ######[AI写代码神器 | 350点数解答 | 2025-11-20 00:18:48]

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