gpt4 book ai didi

c - 使用以下命令查找两个数字之间的素数

转载 作者:行者123 更新时间:2023-11-30 19:01:04 25 4
gpt4 key购买 nike

我需要使用函数查找两个数字之间的质数(包括两个数字)。例如,使用 <<(3 23)>> 输出为 3 5 7 11 13 17 19 23

这是我到目前为止的代码,但我在使用它时遇到了麻烦。我做错了什么或者如何改进我的解决方案?

#include<stdio.h>

int check_prime(int l,int u){
int x, i;

for (x = l; x <= u; x++){
for (i = 2; i < x; i++){
if (x % i == 0) break;
}
}
if (i == x) return x;
}

int main(){
int x, y, f;
scanf("%d%d", &x, &y);
f = check_prime(x, y);
printf("%d", f);
return 0;
}

最佳答案

您正在打印从 check_prime() 返回的值,并且该值只是一个值。如果您想打印某个范围内的所有素数,我建议您打印该函数中的值,而不是从 check_prime() 返回值。

#include<stdio.h>

void check_prime(int l,int u){
int x,i;

for(x=l;x<=u;x++){
for(i=2;i<x;i++){
if(x%i==0)
break;
}
if(i==x){
printf("%d ", x);
}
}

}

int main(){
int x,y;
scanf("%d%d",&x,&y);
check_prime(x,y);
return 0;
}

这是可执行代码:https://repl.it/@fiveelements/PrintPrimeNumbersInARange?language=c

关于c - 使用以下命令查找两个数字之间的素数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58516041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com