void素数判断函数IsPrime中根据是否是素数有两个printf,在主函数中直接引用IsPrime(n),输入9后打印出不是素数,但输入7后什么都没有打印出来?
4条回答 默认 最新
- 8号店长 2022-02-09 14:48关注
你的判断是素数放到循环里面了,在for循环里面i怎么都不会大于sqrt(a)
#include<stdio.h> #include<math.h> void IsPrime(int a) { int i; for(i=2;i<=sqrt(a);i++) { if(a%i==0) { printf("%d不是素数",a); break; } } if(i>sqrt(a)) { printf("%d是素数",a); } } int main() { int n; scanf("%d",&n); IsPrime(n); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 在rhel8中安装qemu-kvm时遇到“cannot initialize crypto:unable to initialize gcrypt“报错”
- ¥15 arbotix没有/cmd_vel话题
- ¥15 paddle库安装时报错提示需要安装common、dual等库,安装了上面的库以后还是显示报错未安装,要怎么办呀?
- ¥20 找能定制Python脚本的
- ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
- ¥15 用C语言怎么判断字符串的输入是否符合设定?
- ¥15 通信专业本科生论文选这两个哪个方向好研究呀
- ¥50 我在一个购物网站的排队系统排队,这个排队到号后重新定向到目标网站进行购物,但是有技术牛通过技术方法直接跳过排队系统进入目标网址购物,有没有什么软件或者脚本可以用
- ¥15 ios可以实现ymodem-1k协议 1024字节传输吗?
- ¥300 寻抓云闪付tn组成网页付款链接