编写一函数 CheckNum(int m),用来判断一个数是否为素数,是返回值为1,不是返回值为0。
时间: 2024-02-27 19:56:17 浏览: 149
南开一百题 计算机等级考试
5星 · 资源好评率100%
好的,这是一个判断素数的函数,可以使用循环遍历从2到该数的平方根,判断该数能否被整除,以下是实现代码:
```c
int CheckNum(int m)
{
if (m < 2) {
return 0; // 0和1都不是素数
}
int i;
for (i = 2; i * i <= m; ++i) { // 循环遍历从2到该数的平方根
if (m % i == 0) {
return 0; // 可以被整除,不是素数
}
}
return 1; // 不能被整除,是素数
}
```
这个函数接受一个整数作为参数,并返回一个整数,表示该数是否为素数。在函数内部,首先判断该数是否小于2,因为0和1都不是素数。然后使用一个循环遍历从2到该数的平方根,如果该数能被整除,则不是素数,返回0。如果循环结束后仍然没有找到能够整除该数的因子,则该数是素数,返回1。
需要注意的是,这个函数的时间复杂度为 O(√n),其中 n 是输入的整数。在实际使用时,可以使用更高效的算法来判断素数,例如 Miller-Rabin 算法或 AKS 算法。
阅读全文