写判断质数的程序时,需特别注意边界条件:
1.开始边界条件:2作为第一位质数,不参与循环;
2.循环主体:divisor += divisor % 2 +1代表当除数divisor是奇数时+2,是偶数时+1;
3.结束边界条件:当divisor趋近n时,即divisor=n-1或divisor=n-2,仍然没有数能被n整除,那么可以判断n为质数
#includeint main() { int divisor; int n; scanf("%d",&n); // 输入要判断的数 if (n == 2) { printf("YES"); } else { for (divisor = 2; divisor < n; divisor += (divisor % 2 + 1) ) { if (n % divisor == 0) { printf("NO"); // 当出现能被1或自身之外整除时 break; } else if (divisor == n - 1 || divisor == n-2) { printf("YES"); // 循环到 n-1 或 n-2 时,仍然没有被其他数整除 } } } return 0; }



