用c语言编写一段程序,要求:设计一个函数,用以判断一个整数是否为素数,如果是,则返回1;如果不是,则返回0;并用此函数,找出100-200间的所有素数。
时间: 2023-06-13 08:07:42 浏览: 115
以下是用C语言编写的程序,实现了题目要求的功能:
```c
#include <stdio.h>
int isPrime(int n) {
if (n <= 1) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
printf("100-200间的所有素数为:\n");
for (int i = 100; i <= 200; i++) {
if (isPrime(i)) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
首先定义了一个`isPrime()`函数,用于判断一个整数是否为素数。如果这个数小于等于1,那么它一定不是素数,直接返回0;否则,从2开始到它的平方根之间的所有数都去尝试除它,如果存在一个数能够整除它,那么这个数就不是素数,返回0;否则,这个数就是素数,返回1。
然后在`main()`函数中,对100-200之间的所有整数都调用`isPrime()`函数进行判断,如果是素数就输出。最后输出所有素数之后,程序结束。
相关问题
请用C语言编写如下程序:设计一个子函数,用以判断一个整数是否为素数,如果是,则返回1;如果不是,则返回0,并利用此函数,在主函数中调用此函数,找出100-200之间的所有素数。
以下是程序代码:
```
#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 i;
printf("100-200之间的素数有:\n");
for (i = 100; i <= 200; i++) {
if (isPrime(i)) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
首先定义了一个函数 `isPrime`,用于判断一个整数是否为素数。在函数中,如果参数 `num` 小于等于1,则直接返回0,因为1不是素数。然后通过循环从2开始到 `num / 2`,依次判断 `num` 能否被整除。如果能被整除,则说明不是素数,返回0;否则就一直循环,最终返回1,说明是素数。
在 `main` 函数中,利用循环从100到200,依次判断每个数是否为素数,如果是,则输出该数。最后输出一个换行符,使输出结果更加美观。
用C语言编写一个程序,编写一个函数prime,判断一个正整数是否为素数
下面是用C语言编写的判断正整数是否为素数的函数prime:
```c
#include <stdio.h>
int prime(int n){
int i;
for(i=2;i<=n/2;i++){
if(n%i==0){
return 0;
}
}
return 1;
}
int main(){
int n;
printf("请输入一个正整数:");
scanf("%d",&n);
if(prime(n)){
printf("%d是素数\n",n);
}
else{
printf("%d不是素数\n",n);
}
return 0;
}
```
函数prime的作用是判断传入的正整数n是否为素数,如果是素数,则返回1,否则返回0。在函数中,我们从2开始遍历到n/2,判断n是否能被2到n/2中的任何一个数整除,如果能,则说明n不是素数,返回0;如果遍历完成后没有发现n可被整除的数,则说明n是素数,返回1。
在主函数中,我们首先输入一个正整数n,然后调用prime函数判断n是否为素数,根据prime函数的返回值输出相应的提示信息。
阅读全文