JAVA中如何用break跳出双层while循环的内层while循环,我的程序跳不出来呢?

一个求素数的程序:publicclasstest{publicstaticvoidmain(String[]args){inti=101,j=2,k=0;while(i<... 一个求素数的程序:
public class test {
public static void main(String [] args)
{
int i=101,j=2,k=0;
while(i<=200)
{
while(j<i)
{
if(i%j==0)
{k=0;
break;}
k=1;
j++;
}
if(k==1)
{
System.out.println(i);
}
i++;
}
}
}
展开
 我来答
s136357491
2013-08-09 · TA获得超过223个赞
知道小有建树答主
回答量:295
采纳率:0%
帮助的人:161万
展开全部
在你要跳出的循环前面加加上一个标记比如 loop:(注意冒号)
然后判断

break loop;
还有。。你程序谢错了
追问
标号加过也不对呀,程序哪里错了呀??
追答
j在第二重循环后子啊重置,在i++;的前面或者后面加上j=2
gjx8010
2013-08-09 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:94
采纳率:0%
帮助的人:89.8万
展开全部
不是break没跳出来,是你的程序本身有问题……
①j没有重新赋值
②i%j==0除了可以整除这种情况,还有i=j的时候也是0
追问
j++;??????
while(j<i)????
应该可以了吧
追答
第一个问题是你理解错误……
j++是内层循环里的
但是你内层break出来之后没有把j重置,所以你下一次内层while的时候,j就会从i的上一个值开始。但是本来应该是从头再来一次才对。
第二个问题是我没看清楚
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
图表生活
2013-08-09 · TA获得超过925个赞
知道小有建树答主
回答量:486
采纳率:0%
帮助的人:260万
展开全部
最简单的方式用return
如果考虑下流程,用两个break实现
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AlexYaole
2013-08-09
知道答主
回答量:45
采纳率:0%
帮助的人:16.9万
展开全部
你是要跳出2个循环还是跳出内层while而不跳出外层的while?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bingfengfzl
2013-08-09 · TA获得超过7670个赞
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:148万
展开全部
用标记可以跳出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式