素数判定,提交后显示错误,不知道哪里有问题。请帮忙看看,谢谢啦!
4条回答 默认 最新
- kayilv 2022-09-06 22:32关注
一、14行的输出函数写错位置了,这样会导致任何一个不是n的因子的数都被判定成功,然后输出yes。你应该在整个循环遍历结束之后,在去做判断看是否输出yes。
二、第13行的break写错了,这样会导致break一定运行,你应该放在if里面。具体程序见下:
#include<stdio.h> int main() { int n,i,a; scanf("%d",&n); if(n==1)printf("No"); a=1;//默认其是一个素数,如果不是a的值为0 for(i=2;i*i<=n;i++) { if(n%i==0){ a=0; printf("No"); break; } } if(a==1){ printf("Yes"); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 用hfss做微带贴片阵列天线的时候分析设置有问题
- ¥50 我撰写的python爬虫爬不了 要爬的网址有反爬机制
- ¥15 Centos / PETSc / PETGEM
- ¥15 centos7.9 IPv6端口telnet和端口监控问题
- ¥120 计算机网络的新校区组网设计
- ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
- ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
- ¥20 海浪数据 南海地区海况数据,波浪数据
- ¥20 软件测试决策法疑问求解答
- ¥15 win11 23H2删除推荐的项目,支持注册表等