各位帮帮看个小程序,关于求101到200的质数小毛病 本帖最后由 luck28 于 2012-08-26 18:04:10 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 初学者常见错误, continue的判断语句放错嵌套循环的位置了。下次请你排好版,就很容易看清楚了: for (int i = 101; i <= 200; i += 2) { boolean f = true; for (int j = 2; j < i; j++) { if (i % j == 0) { f = false; break; } } if (!f) { // 你之前错误的把它放在内层循环里面了 continue; } System.out.print(" " + i); } public class Test101_200 { public static void main(String args[]) { for(int i=101;i<=200;i+=2){ boolean f = true; for(int j = 2;j < i;j++){ if(i%j == 0){ f = false; break; } } if(!f){ continue; } System.out.print(" "+ i); } }} 分行用: System.out.println(" "+ i);而不是: System.out.print(" "+ i); continue最对当前的循环有效。你的列子里。你写在了for (int j = 2; j < i; j++) {里面了,所以就继续做这个循环的下一个循环了。根据你的要求,其实continue应该放在for (int i = 101; i <= 200; i += 2) {里。 for (int i = 101; i <= 200; i += 2) { boolean f = true; for (int j = 2; j < i; j++) { if (i % j == 0) { f = false; break; } } if(f){ System.out.print(" " + i); } } 大家帮帮忙,怎么用BlueJ写一个幻方的程序 选择结构编程练习 请英语好的朋友 看下这道题目好么? 顺便翻译一下啦 谢谢 oracle.sql.BLOB存储图片.... 请问这两个正则表达式有什么区别? Frame类的继承问题 日期加减问题 java进阶问题! 为什么用getInt()可以用getString()却不可以呢? 指定一天2003-03-03,怎么求出与这天同一周的起始日,和最后一天的日期 SVN与JAVA程序集成,请大侠们帮忙给点思路,最好详细点。 jtable传一个参数怎么就不能显示了,直接传object,string就能显示
for (int i = 101; i <= 200; i += 2) {
boolean f = true;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
f = false;
break;
} }
if (!f) { // 你之前错误的把它放在内层循环里面了
continue;
}
System.out.print(" " + i);
}
public static void main(String args[]) {
for(int i=101;i<=200;i+=2){
boolean f = true;
for(int j = 2;j < i;j++){
if(i%j == 0){
f = false;
break;
}
}
if(!f){
continue;
}
System.out.print(" "+ i);
}
}
}
分行用:
System.out.println(" "+ i);
而不是:
System.out.print(" "+ i);
你的列子里。你写在了
for (int j = 2; j < i; j++) {
里面了,所以就继续做这个循环的下一个循环了。根据你的要求,其实continue应该放在
for (int i = 101; i <= 200; i += 2) {
里。
boolean f = true;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
f = false;
break;
}
}
if(f){
System.out.print(" " + i);
}
}