一百以内的所有质数

intn,m;for(n=1;n<=100;n++){for(m=2;m<n;m++){if(n%m==0){break;}}if(n==m){System.out.pr... int n, m;
for (n = 1; n <= 100; n++) {
for (m = 2; m < n; m++) {
if (n % m == 0) {
break;
}
}
if (n == m) {
System.out.println(m);
}
请帮我分析下这道题,详细点,谢谢
展开
 我来答
wuyang528378
推荐于2016-12-02 · TA获得超过1159个赞
知道答主
回答量:470
采纳率:0%
帮助的人:190万
展开全部
首先外层循环从1-100,然后在每一次循环中判断每一个数是不是质数,需要循环判断能不能找到可以整除这个数的数,找到即说明不是质数,另外最小的质数是2,所以从2开始,而条件中的m<n应该是不够合理的,应该为m<=n/2更精确一点,因为一个数如果能被比它一半大的数整除,除出来的结果肯定是比它一半小。另外最后的判断是错的,我给个完整的,但是没试过行不行。
int n, m;
boolean isZhiShu = true;//标志一个数是不是质数
for (n = 1; n <= 100; n++) {
for (m = 2; m < n; m++) {
if (n % m == 0) {
isZhiShu = false;如果这个数能被某个数整除,则不是质数
break;//不是质数,不用继续判断了,跳出本次循环后会经过下一个if判断是否为质数
}
if(isZhiShu||n==2){//2也是质数,但是上面的判断对2不适用
System.out.println(n+"是质数");
}
}

由于时间没有细看了,自己研究一下吧,有问题再说
更多追问追答
追问
你那个代码只输出了一个3
你那个代码只输出了一个3
帐号已注销
2012-11-27 · TA获得超过153个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:127万
展开全部
错题,得出来的应该不全
更多追问追答
追问
哪里错了?运行结果是对的
追答
你看看34和38有吗?结果里没有输出吧,可是他俩也是质数,所以说,这个题输出的结果比实际的要少
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
芯片永2小鬼
2012-11-28
知道答主
回答量:3
采纳率:0%
帮助的人:4711
展开全部
2、3、5、7、11、13、17、19、23、29、31、37、39、41、43、47、53、59、61、67、71、73、79、83、89、97
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
孤独公了歌
高粉答主

2020-03-04 · 说的都是干货,快来关注
知道答主
回答量:10万
采纳率:4%
帮助的人:5233万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旭辞mc
2020-02-26
知道答主
回答量:2
采纳率:0%
帮助的人:1227
展开全部
2、3、5、7、11、13、19、23、29、31、37、39、41、43、47、53、59、61、67、71、73、79、83、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式