c语言break跳出2个循环

for(;;){/*2ndlevel*//*===============================================================... for(;;){
/*2nd level*/
/*==========================================================================
initial setting(get drink selection)
============================================================================
*/ while(1)
{
/*level 3*/

/*==========================================================================
press start button
============================================================================
*/while(1)
{ /*level 4*/
if (start_GetVal()==1)
{
/*=========================================================================
drink selecting code detect
===========================================================================
*/
if(drink_selection_1_GetVal()==1)
{if (drink_selection_2_GetVal()==1)
{model=3;
break;/* back to level 3*/
break;/* back to level 2*/}
else
{model=2;
break;/* back to level 3*/
break;/* back to level 2*/}
}

else
{if (drink_selection_2_GetVal()==1)
{model=1;
break;/* back to level 3*/
break;/* back to level 2*/}
else
break/* back to level 3 reselect*/;

}}

}
}
可以break连用么?
展开
 我来答
857950459
推荐于2018-10-29 · TA获得超过142个赞
知道答主
回答量:38
采纳率:33%
帮助的人:21.5万
展开全部

在循环条件那里改一下,改成一个变量,例如

int a=1,b=2;
int n=1;
int m=1;
for(;m==1;)
{
    while(n)
    {
        if(a<b)
        {
            n=0;
            m=0;
        }
    }
}

这样就可以跳出两重,甚至更多的循环了,这种方法是很有用的

编程猪
2018-10-26 · TA获得超过170个赞
知道答主
回答量:80
采纳率:80%
帮助的人:9.5万
展开全部
int xxx, xxx;
for(xxx=xxx; xxx<xxx; xxx++){
    for(xxx=xxx; xxx<xxx; xxx++){
      xxx;
      if(xxx){
          goto aaa;//跳出多层循环
      }
  }
aaa:
xxx;

不能,但是可以用标号代替:

我这个方法不用什么思维,每个xxx有时一样有时不一样,只是表示一个不重要的东西;aaa是一个标号,两个aaa必须一样,但是它俩你可以自己改名字

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-07-23
展开全部

一个{}内两个break没有意义,第一个break就出去了后面那个不执行

for(;;)
{
if
{
break   //第一层
}
else 
{
}
break   //第二层
}

这样第一个break运行就跳出了if、else到了第二层运行第二个break跳出for

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
godinu
2013-12-18 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:111
采纳率:0%
帮助的人:106万
展开全部
不可以,break后后面的语句不会执行
追问
如果想要跳出双循环请问有什么好的建议么?
不论如何谢谢了
追答
跳出2层的话在出1层前置位flag,之后再条件判断,再break
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-07-23
展开全部
不能连用,使用boolean 变量标识
~
~
~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式