
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++;
}
}
} 展开
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++;
}
}
} 展开
5个回答
展开全部
在你要跳出的循环前面加加上一个标记比如 loop:(注意冒号)
然后判断
break loop;
还有。。你程序谢错了
然后判断
break loop;
还有。。你程序谢错了
追问
标号加过也不对呀,程序哪里错了呀??
追答
j在第二重循环后子啊重置,在i++;的前面或者后面加上j=2
展开全部
不是break没跳出来,是你的程序本身有问题……
①j没有重新赋值
②i%j==0除了可以整除这种情况,还有i=j的时候也是0
①j没有重新赋值
②i%j==0除了可以整除这种情况,还有i=j的时候也是0
追问
j++;??????
while(j<i)????
应该可以了吧
追答
第一个问题是你理解错误……
j++是内层循环里的
但是你内层break出来之后没有把j重置,所以你下一次内层while的时候,j就会从i的上一个值开始。但是本来应该是从头再来一次才对。
第二个问题是我没看清楚
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最简单的方式用return
如果考虑下流程,用两个break实现
如果考虑下流程,用两个break实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是要跳出2个循环还是跳出内层while而不跳出外层的while?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用标记可以跳出来
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询