logo

CuriousTab

CuriousTab

Discussion


Home C Programming Control Instructions Comments

  • Question
  • Point out the error, if any in the program.
    #include<stdio.h>
    int main()
    {
        int P = 10;
        switch(P)
        {
           case 10:
           printf("Case 1");
    
           case 20:
           printf("Case 2");
           break;
    
           case P:
           printf("Case 2");
           break;
        }
        return 0;
    }
    


  • Options
  • A. Error: No default value is specified
  • B. Error: Constant expression required at line case P:
  • C. Error: There is no break statement in each case.
  • D. No error will be reported.

  • Correct Answer
  • Error: Constant expression required at line case P:  

    Explanation
    The compiler will report the error "Constant expression required" in the line case P: . Because, variable names cannot be used with case statements.

    The case statements will accept only constant expression.


    Control Instructions problems


    Search Results


    • 1. Point out the error, if any in the for loop.
      #include<stdio.h>
      int main()
      {
          int i=1;
          for(;;)
          {
              printf("%d\n", i++);
              if(i>10)
                 break;
          }
          return 0;
      }
      

    • Options
    • A. There should be a condition in the for loop
    • B. The two semicolons should be dropped
    • C. The for loop should be replaced with while loop.
    • D. No error
    • Discuss
    • 2. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int x=1, y=1;
          for(; y; printf("%d %d\n", x, y))
          {
              y = x++ <= 5;
          }
          printf("\n");
          return 0;
      }
      

    • Options
    • A. 2 1
      3 1
      4 1
      5 1
      6 1
      7 0
    • B. 2 1
      3 1
      4 1
      5 1
      6 1
    • C. 2 1
      3 1
      4 1
      5 1
    • D. 2 2
      3 3
      4 4
      5 5
    • Discuss
    • 3. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=3;
          switch(i)
          {
              case 1:
                  printf("Hello\n");
              case 2:
                  printf("Hi\n");
              case 3:
                  continue;
              default:
                  printf("Bye\n");
          }
          return 0;
      }
      

    • Options
    • A. Error: Misplaced continue
    • B. Bye
    • C. No output
    • D. Hello Hi
    • Discuss
    • 4. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          char j=1;
          while(j < 5)
          {
              printf("%d, ", j);
              j = j+1;
          }
          printf("\n");
          return 0;
      }
      

    • Options
    • A. 1 2 3 ... 127
    • B. 1 2 3 ... 255
    • C. 1 2 3 ... 127 128 0 1 2 3 ... infinite times
    • D. 1, 2, 3, 4
    • Discuss
    • 5. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          char str[]="C-program";
          int a = 5;
          printf(a >10?"Ps\n":"%s\n", str);
          return 0;
      }
      

    • Options
    • A. C-program
    • B. Ps
    • C. Error
    • D. None of above
    • Discuss
    • 6. Point out the error, if any in the while loop.
      #include<stdio.h>
      int main()
      {
          int i=1;
          while()
          {
              printf("%d\n", i++);
              if(i>10)
                 break;
          }
          return 0;
      }
      

    • Options
    • A. There should be a condition in the while loop
    • B. There should be at least a semicolon in the while
    • C. The while loop should be replaced with for loop.
    • D. No error
    • Discuss
    • 7. Point out the error, if any in the program.
      #include<stdio.h>
      int main()
      {
          int i = 1;
          switch(i)
          {
              printf("This is c program.");
              case 1:
                  printf("Case1");
                  break;
              case 2:
                  printf("Case2");
                  break;
          }
      return 0;
      }
      

    • Options
    • A. Error: No default specified
    • B. Error: Invalid printf statement after switch statement
    • C. No Error and prints "Case1"
    • D. None of above
    • Discuss
    • 8. Point out the error, if any in the while loop.
      #include<stdio.h>
      int main()
      {
          void fun();
          int i = 1;
          while(i <= 5)
          {
              printf("%d\n", i);
              if(i>2)
                  goto here;
          }
      return 0;
      }
      void fun()
      {
          here:
          printf("It works");
      }
      

    • Options
    • A. No Error: prints "It works"
    • B. Error: fun() cannot be accessed
    • C. Error: goto cannot takeover control to other function
    • D. No error
    • Discuss
    • 9. Which of the following errors would be reported by the compiler on compiling the program given below?
      #include<stdio.h>
      int main()
      {
          int a = 5;
          switch(a)
          {
      	case 1:
      	printf("First");
      
      	case 2:
      	printf("Second");
      
      	case 3 + 2:
      	printf("Third");
      
      	case 5:
      	printf("Final");
      	break;
      
          }
          return 0;
      }
      

    • Options
    • A. There is no break statement in each case.
    • B. Expression as in case 3 + 2 is not allowed.
    • C. Duplicate case case 5:
    • D. No error will be reported.
    • Discuss
    • 10. Point out the error, if any in the program.
      #include<stdio.h> 
      int main()
      {
          int a = 10, b;
          a >=5? b=100: b=200;
          printf("%d\n", b);
          return 0;
      }
      

    • Options
    • A. 100
    • B. 200
    • C. Error: L value required for b
    • D. Garbage value
    • Discuss


    Comments

    There are no comments.

Enter a new Comment