实现isPrime()函数,参数为整数,要有异常处理。如果整数是素数,返回True,否则返回False。c语言完整如果整数是素数,输出"是素数", 否则输出"不是素数"; 如果输入不满足要求,输出"输入错误"。
时间: 2024-09-25 12:01:48 浏览: 51
在C语言中,你可以使用以下代码来实现一个`isPrime`函数,该函数接受一个整数作为参数,并处理输入错误:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int num) {
// 检查输入是否满足要求
if (num <= 1) {
printf("输入错误\n");
return false;
}
// 使用循环从2到num的平方根,查找是否有因子
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
printf("%d 不是素数\n", num);
return false;
}
}
// 如果没有找到因子,数是素数
printf("%d 是素数\n", num);
return true;
}
int main() {
int num;
printf("请输入一个整数:\n");
scanf("%d", &num);
isPrime(num);
return 0;
}
```
这个`isPrime`函数首先检查输入是否大于1,因为1既不是素数也不是合数。然后,它通过循环遍历从2到`sqrt(num)`,寻找是否有能整除`num`的因子。如果没有找到,就认为`num`是素数。如果遇到因子,就停止并输出“不是素数”。
阅读全文