c - 使用以下方法查找包括两个数字之间的素数
问题描述
我需要使用函数找到两个数字之间并包含两个数字的素数。例如,使用 <<(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
推荐阅读
- android - Windows 10更新后Android Studio模拟器突然变得很慢
- vue.js - 将动画添加到 v-text-field 中的 append-icon
- android - 初始化lateinit后怎么办?
- javascript - 递归算法以角度构建树
- javascript - Google Tag Manager - 设置/重置 cookie 的自定义 HTML 标记 - 创建事件以跟踪用户导航
- rust - 如何避免依赖 libssl.so.10 和 libcrypto.so.10
- python - 将新列添加到基于条件的类别值
- sql - Postgres 使用多个返回保留顺序更新多行
- python - 如何在python中通过树数据结构生成概率树?
- amazon-dynamodb - 使用 boto3 更新 Dynamodb 表中的表数据时出错