为什么编译运行不出来我想要的结果(输出十对孪生素数)求解,本身是求出两组素数,然后相减等于二,输出前十个,可是我却编译出来空白
编译前十对孪生素数求找出问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- qzjhjxj 2022-10-31 16:48关注
题主的代码里,第一个for()就死循环了,当然没结果了。题主的思路是,先找到第一个素数,找到后接着素数再找一个,最后将这两个素数相减等于2后计数 count++,直到 count 等于 10 ,停止循环。但代码里没按这思路写。
题主的代码修改如下,供参考:#include <stdio.h> int main() { int number1 = 0,number2 = 0,i,j,a,b,count = 0; for (i = 2;count < 10;i++) // 修改 { for (j = 2,a = 0,b = 0;j < i;j++) { if (i % j == 0) break; } if (j == i) { a = i; //a 保留第一个找到的质数 for (j = 2;j < i + 2;j++) { if ((i+2) % j == 0) break; } if (j == i + 2) b = i + 2; //b 为与a相差2的质数 } if (a && b) //如果a b 两数都不是0,就找到了质数对 { printf("%d %d\n",a, b); count++; } } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
- ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
- ¥15 帮我写一个c++工程
- ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
- ¥15 关于smbclient 库的使用
- ¥15 微信小程序协议怎么写
- ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
- ¥20 怎么用dlib库的算法识别小麦病虫害
- ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
- ¥15 uniapp uview http 如何实现统一的请求异常信息提示?