logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Flow Control Comments

  • Question
  • What will be the output of the program?
    public class If2 
    {
        static boolean b1, b2;
        public static void main(String [] args) 
        {
            int x = 0;
            if ( !b1 ) /* Line 7 */
            {
                if ( !b2 ) /* Line 9 */
                {
                    b1 = true;
                    x++;
                    if ( 5 > 6 ) 
                    {
                        x++;
                    }
                    if ( !b1 ) 
                        x = x + 10;
                    else if ( b2 = true ) /* Line 19 */
                        x = x + 100;
                    else if ( b1 | b2 ) /* Line 21 */
                        x = x + 1000;
                }
            }
            System.out.println(x);
        }
    }
    


  • Options
  • A. 0
  • B. 1
  • C. 101
  • D. 111

  • Correct Answer
  • 101 

    Explanation
    As instance variables, b1 and b2 are initialized to false. The if tests on lines 7 and 9 are successful so b1 is set to true and x is incremented. The next if test to succeed is on line 19 (note that the code is not testing to see if b2 is true, it is setting b2 to be true). Since line 19 was successful, subsequent else-if's (line 21) will be skipped.

    Flow Control problems


    Search Results


    • 1. What will be the output of the program?
      boolean bool = true; 
      if(bool = false) /* Line 2 */
      {
          System.out.println("a"); 
      } 
      else if(bool) /* Line 6 */
      {
          System.out.println("b"); 
      } 
      else if(!bool) /* Line 10 */
      {
          System.out.println("c"); /* Line 12 */
      } 
      else 
      {
          System.out.println("d"); 
      }
      

    • Options
    • A. a
    • B. b
    • C. c
    • D. d
    • Discuss
    • 2. What will be the output of the program?
      int i = 1, j = 10; 
      do 
      {
          if(i > j) 
          {
              break; 
          } 
          j--; 
      } while (++i < 5); 
      System.out.println("i = " + i + " and j = " + j);
      

    • Options
    • A. i = 6 and j = 5
    • B. i = 5 and j = 5
    • C. i = 6 and j = 4
    • D. i = 5 and j = 6
    • Discuss
    • 3. What will be the output of the program?
      class A 
      {
          final public int GetResult(int a, int b) { return 0; } 
      } 
      class B extends A 
      { 
          public int GetResult(int a, int b) {return 1; } 
      } 
      public class Test 
      {
          public static void main(String args[]) 
          { 
              B b = new B(); 
              System.out.println("x = " + b.GetResult(0, 1));  
          } 
      }
      

    • Options
    • A. x = 0
    • B. x = 1
    • C. Compilation fails.
    • D. An exception is thrown at runtime.
    • Discuss
    • 4. What will be the output of the program?
      class Base
      { 
          Base()
          {
              System.out.print("Base");
          }
      } 
      public class Alpha extends Base
      { 
          public static void main(String[] args)
          { 
              new Alpha(); /* Line 12 */
              new Base(); /* Line 13 */
          } 
      }
      

    • Options
    • A. Base
    • B. BaseBase
    • C. Compilation fails
    • D. The code runs with no output
    • Discuss
    • 5. What will be the output of the program?
      class Super
      { 
          public int i = 0; 
      
          public Super(String text) /* Line 4 */
          {
              i = 1; 
          } 
      } 
      
      class Sub extends Super
      {
          public Sub(String text)
          {
              i = 2; 
          } 
      
          public static void main(String args[])
          {
              Sub sub = new Sub("Hello"); 
              System.out.println(sub.i); 
          } 
      }
      

    • Options
    • A. 0
    • B. 1
    • C. 2
    • D. Compilation fails.
    • Discuss
    • 6. What will be the output of the program?
      int I = 0;
      label:
          if (I < 2) {
          System.out.print("I is " + I);
          I++;
          continue label;
      }
      

    • Options
    • A. I is 0
    • B. I is 0 I is 1
    • C. Compilation fails.
    • D. None of the above
    • Discuss
    • 7. What will be the output of the program?
      public class Test 
      {  
          public static void main(String args[]) 
          { 
              int i = 1, j = 0; 
              switch(i) 
              { 
                  case 2: j += 6; 
                  case 4: j += 1; 
                  default: j += 2; 
                  case 0: j += 4; 
              } 
              System.out.println("j = " + j); 
          } 
      }
      

    • Options
    • A. j = 0
    • B. j = 2
    • C. j = 4
    • D. j = 6
    • Discuss
    • 8. What will be the output of the program?
      public class Switch2 
      {
          final static short x = 2;
          public static int y = 0;
          public static void main(String [] args) 
          {
              for (int z=0; z < 3; z++) 
              {
                  switch (z) 
                  {
                      case x: System.out.print("0 ");
                      case x-1: System.out.print("1 ");
                      case x-2: System.out.print("2 ");
                  }
              }
          }
      }
      

    • Options
    • A. 0 1 2
    • B. 0 1 2 1 2 2
    • C. 2 1 0 1 0 0
    • D. 2 1 2 0 1 2
    • Discuss
    • 9. What will be the output of the program?
      public class Switch2 
      {
          final static short x = 2;
          public static int y = 0;
          public static void main(String [] args) 
          {
              for (int z=0; z < 4; z++) 
              {
                  switch (z) 
                  {
                      case x: System.out.print("0 ");
                      default: System.out.print("def ");
                      case x-1: System.out.print("1 ");  
                                  break;
                      case x-2: System.out.print("2 ");
                  }
              }
          }
      }
      

    • Options
    • A. 0 def 1
    • B. 2 1 0 def 1
    • C. 2 1 0 def def
    • D. 2 1 0 def 1 def 1
    • Discuss
    • 10. What will be the output of the program?
      int i = 0, j = 5; 
      tp: for (;;) 
          {
              i++;  
              for (;;) 
              {
                  if(i > --j) 
                  {
                      break tp; 
                  } 
              } 
              System.out.println("i =" + i + ", j = " + j);
      

    • Options
    • A. i = 1, j = 0
    • B. i = 1, j = 4
    • C. i = 3, j = 4
    • D. Compilation fails.
    • Discuss


    Comments

    There are no comments.

Enter a new Comment