int n;
for(n=1;n<=10;n++)
{
if(n%2==0) break;
//System.out.println(n);
}
//System.out.println(n);System.out.println(n);  放在这两个位置,结果不一样.想不太明白.

解决方案 »

  1.   

    肯定不一样啊
    if(n%2==0) break; 
    System.out.println(n); //1
    for外面是
    System.out.println(n); //2
      

  2.   

    if(n%2==0) //为ture
     break; //循环结束,里面的就不执行
    外面的不管怎样都执行
      

  3.   

    楼主我先给你读一下代码
     int n; 
    for(n=1;n <=10;n++) //循环

      if(n%2==0)//判断是否是2的倍数如过为2的倍数则结束循环
        break; 
      //System.out.println(n); 

      //System.out.println(n); 
    如果放在里面的话打印的为循环的数字而放在外面则为n 最后结束循环所得到的结果
      

  4.   

    明白了.关于里面的循环break的使用我明白呢.就是对外面的不太清楚.而放在外面则为n 最后结束循环所得到的结果   这句话使我明白了.
    谢谢各位
      

  5.   

    int n; 
    for(n=1;n <=10;n++) //for循环,只要条件成立,就要进入循环。

    if(n%2==0) //判断是否是2的倍数,如果为2的倍数则结束循环,下面的那句话就不打印了。 
        break; 
    //System.out.println(n); 

    //System.out.println(n);//跳出循环后才打印,程序就会推出了。 
      

  6.   

    据本菜菜的经验,你break后面的那个语句如果去掉注.编译的时候会报错:不可达代码.
    我用的是eclipse.不知道 dos下编译会报什么错.
    注意!不管是contiue/break/return后面都不要写语句,只能写个}
    你的明白?
      

  7.   

                    int n;
    for(n=1;n <=10;n++)
    {
    if(n%2==0)

    System.out.println(n);
    break;
    }
    }
    System.out.println(n);
    这样就是一样的了,原因就是你的第二个输出没在循环中如果n=0开始那么你能得到3个输出
      

  8.   

                    int n; 
    for(n=1;n <=10;n++) 

    if(n%2==0) break; 
    //System.out.println(n); -------方案一

    //System.out.println(n); -------方案二
    方案一
    当 n=1 时, 不满足 if 的条件,执行 "system.out.println(n);" 输出 1;
    当 n=2 时, 满足 if 的条件,执行  break 跳出循环;
    结束方案二
    当 n=1 时, 不满足 if 的条件,n自加;
    当 n=2 时, 满足 if 的条件,执行  break 跳出循环.
    接着执行 "system.out.println(n);" 输出 2;
    结束
      

  9.   

    int n; 
      for(n=1;n <=10;n++) 
      { 
       if(n%2==0)
      break; 
         System.out.println("1:"+n); 
      } 
      System.out.println("2:"+n); 
    要弄清楚if(条件){}的问题和break的问题.
      

  10.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主截止到2008-06-20 13:13:38的汇总数据:
    注册日期:2008-1-22
    上次登录:2008-6-18
    发帖数:3                  发帖分:60                 
    结贴数:0                  结贴分:0                  
    结贴率:0.00 %        结分率:0.00 %        
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
      

  11.   

    11楼的,先试过才下结论吧。我证明,是不会出现:达不到行
    我也是用eclipse版本:3.3
      

  12.   

      谬论!!!谁说的? 
    int n;
      for(n=1;n <=10;n++)
      {
      if(n%2==0)
      break;
        System.out.println("1:"+n);
      }
      System.out.println("2:"+n); 等价与
    int n;
      for(n=1;n <=10;n++)
      {
      if(n%2==0){
      break;
    }
        System.out.println("1:"+n);
      }
      System.out.println("2:"+n); 还有理由不可以到达么?