黑马程序员技术交流社区

标题: 有关if结构的小问题 [打印本页]

作者: 谢宝盛    时间: 2012-11-23 12:05
标题: 有关if结构的小问题
class ifdemo1
{
     public static void main(String[] args)

        {
               
          int n=5;
         if(n>1)
                System.out.println("a");
        else if(n>2)
                System.out.println("b");
        else if(n>6)
                System.out.println("c");
        else
                System.out.println("NO");
        }

}

现在是满足了n>1 n>2  不满足n>6
结果是打印n>1 ==="a"
是不是满足第一个个条件,后面的条件是不是就不需要执行

作者: 李光耀    时间: 2012-11-23 13:08
本帖最后由 李光耀 于 2012-11-23 13:09 编辑

if(如果条件成立,执行大括号里面的语句){

}else if(在上面的条件不成立的情况下,还有其他的可以能的条件,如果满足执行后面大括号里面的语句)
{

}else{
   上面的条件不成立的时候,执行的语句/
}

第一个if     n>1  所以就运行第一个if,下面的就不运行了。也就是如果符合第一个,后面的就不执行了{:soso_e195:}   正确求表扬~~
                                                                                                                                                                      错误求改正~~
作者: 秦锐    时间: 2012-11-23 13:11
你这个是嵌套选择:if(n>2)是嵌套在if(n>1)这个选择语句的else中的;
你想要的结果是:
int n=5;
if(n<=1)
    System.out.println("NO");
else
{
if(n>1)
                 System.out.println("a");
if(n>2)
                 System.out.println("b");
if(n>6)
                 System.out.println("c");
         }
作者: 舒远    时间: 2012-11-23 13:13
class ifdemo1
{
      public static void main(String[] args)

        {
                 
          int n=5;
          if(n>6)
                 System.out.println("c");
         else if(n>2)
                 System.out.println("b");
         else if(n>1)
                 System.out.println("a");
         else
                 System.out.println("NO");
         }

}
作者: 小洋人最happy    时间: 2012-11-23 13:20
你那个程序运行结果为a,if语句中如果满足第一个条件就直接打印,后面的代码是执行不到的。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2