用C语言定义一个函数isPrime(num),判断num是否是素数并画出流程图
时间: 2023-07-15 19:10:26 浏览: 142
以下是用C语言定义的判断素数的函数isPrime(num):
```c
#include <stdio.h>
int isPrime(int num) {
int i;
if (num <= 1) {
return 0;
}
for (i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int num;
printf("请输入一个整数:");
scanf("%d", &num);
if (isPrime(num)) {
printf("%d是素数\n", num);
} else {
printf("%d不是素数\n", num);
}
return 0;
}
```
函数isPrime(num)中,如果num小于等于1,则直接返回0;否则从2开始循环,如果num能被i整除,则说明num不是素数,返回0;否则一直循环到i的平方大于num为止,此时说明num是素数,返回1。
以下是流程图:
![isPrime流程图](https://img-blog.csdnimg.cn/20210807111311667.png)
相关问题
用C语言定义一个函数isPrime(num),判断num是否是素数
下面是用C语言定义的判断素数的函数isPrime(num):
```c
int isPrime(int num) {
int i;
if (num <= 1) {
return 0;
}
for (i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
```
函数中,首先判断num是否小于等于1,若是,则直接返回0,因为1和负数都不是素数。然后利用循环判断num是否能被2到num/2之间的数整除,若能,则返回0,否则返回1。如果函数返回1,则表示num是素数,否则不是素数。
用C语言编写一个函数isprime,判断整数N是否为素数
以下是用C语言编写的判断整数N是否为素数的函数isprime:
```c
#include <stdio.h>
#include <math.h>
int isprime(int N){
int i;
if(N < 2) return 0; //小于2的数不是素数
for(i = 2; i <= sqrt(N); i++){ //从2到sqrt(N)枚举
if(N % i == 0) return 0; //如果能整除,不是素数
}
return 1; //否则是素数
}
int main(){
int n;
printf("请输入一个整数n:");
scanf("%d", &n);
if(isprime(n)) printf("%d是素数\n", n);
else printf("%d不是素数\n", n);
return 0;
}
```
函数isprime的思路是从2到sqrt(N)枚举每个可能的因子i,如果N能被i整除,则N不是素数;否则N是素数。如果N小于2,则不是素数。函数返回1表示N是素数,返回0表示N不是素数。
在主函数中,先输入一个整数n,然后调用isprime函数判断n是否为素数,最后输出结果。
阅读全文