当然退不出!for (int i=0;i<MAX;i++)
  {
   for(int j=0;j<MAX;j++)
    {
      …
        if(…)    break;
    }
  if(…)    break;
  }

解决方案 »

  1.   

    你只break了一次,break出了 for(int j=0;j<MAX;j++),而不能一次就退出两层循环!比如可以这样做:
    int flag = 0;
    for (int i=0;i<MAX;i++){    if(flag) break;
        for(int j=0;j<MAX;j++)
        {
         …
         if(…){
          flag = 1;
                break;
         }
       }
    }
    可能方法笨了点,但能实现!!!
      

  2.   

    你的break退出了,不信你用断点看看,只是外边还有一层循环呢
      

  3.   

    哈哈,你想搞大跃进呀...
    要是有8层循环你要中途退出需要8次BREAK;
      

  4.   

    直接goto出来不就行了,尽管不提倡用goto,但到了真有用的时候,还是goto好,又想起当年的AppleII了……
      

  5.   

    如果VC那么改了,那它就不是C/C++了
      

  6.   

    Break只能退出一层,所以要用两次。Goto一般不提倡用,但这里可以。