用C语言定义一个函数isPrime(num),判断num是否是素数并画出流程图
时间: 2024-03-04 18:50:53 浏览: 38
好的,我会为您解答这个问题。
首先,我们需要了解什么是素数。素数是指只能被1和它本身整除的正整数,例如2、3、5、7等。
接下来,是 C 语言的函数定义和流程图。
```c
#include <stdio.h>
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;
}
int main() {
int num;
printf("请输入一个正整数:");
scanf("%d", &num);
if (isPrime(num)) {
printf("%d是素数。\n", num);
} else {
printf("%d不是素数。\n", num);
}
return 0;
}
```
流程图如下:
![isPrime函数流程图](https://i.imgur.com/4tq4K62.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是否为素数,最后输出结果。
阅读全文