```c #include <stdio.h> #include<math.h> int prime (int k) { if (k <= 1) { // 小于等于 1 的数不是素数 return 0; } int i; for (i = 2; i <= sqrt(k); i++) { // 只需要遍历到 k 的平方根 if (k % i == 0) { // 如果能整除,就不是素数 return 0; } } return 1; // 都不能整除就是素数 } ``` 额外注意的逻辑点: 1. 注意判断素数时,循环的边界是到 k 的平方根。 2. 要考虑输入的 k 值可能为负数或 0 的情况。 3. 对于函数的返回值,严格按照题目要求,是素数返回 1,不是素数返回 0 。 [2024-12-15 23:01:53 | AI写代码神器 | 214点数解答]