*
1. What is the output?
main()
{
int i=3;
switch(i)
{
default:printf("zero");
case 1: printf("one");
break;
case 2:printf("two");
break;
case 3: printf("three");
break;
}
}
Answer :
three
Explanation :
The default case can be placed anywhere inside the loop. It is
executed only when all other cases doesn't match.
2.#include<stdio.h>
main()
{
int i=1,j=2;
switch(i)
{
case 1: printf("GOOD");
break;
case j: printf("BAD");
break;
}
}
Answer:
Compiler Error: Constant expression required in function main.
Explanation:
The case statement can have only constant expressions (this
implies that we cannot use variable names directly so an error).
3.main()
{
float i=1.5;
switch(i)
{
case 1: printf("1");
case 2: printf("2");
default : printf("0");
}
}
Answer:
Compiler Error: switch expression not integral
Explanation:
Switch statements can be applied only to
integral types.
4. #include<stdio.h>
int main()
{
int i = 1;
switch(i)
{
case 1:
printf("Case1");
break;
case 1*2+4:
printf("Case2");
break;
}
return 0;
}
A. Error: in case 1*2+4 statement
B. Error: No default specified
C. Error: in switch statement
D. No Error
Answer: Option D
Explanation:
Constant expression are accepted in switch
It prints "Case1"
5. #include<stdio.h>
int main()
{
int i=1;
for(;;)
{
printf("%dn", i++);
if(i>10)
break;
}
return 0;
}
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
Answer: Option D
6. #include<stdio.h>
int main()
{
int a = 10;
switch(a)
{
}
printf("This is c program.");
return 0;
}
A. Error: No case statement specified
B. Error: No default specified
C. No Error
D. Error: infinite loop occurs
Answer: Option C
7. #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;
}
A. Error: No default specified
B. Error: Invalid printf statement after switch statement
C. No Error and prints "Case1"
D. None of above
Answer: Option C
8. #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;
}
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.
Answer: Option C
9. include <stdio.h>
int main()
{
int i=0;
for(i=0; i<20; i++)
{
switch(i)
{
case 0:
i+=5;
case 1:
i+=2;
case 5:
i+=5;
}
default:
i+=4;
break;
}
printf("%d ", i);
}
getchar();
return 0;
OUTPUT: 21
10. #include<stdio.h>
int main()
{
int i=3;
switch(i)
{
case 1:
printf("Hellon");
case 2:
printf("Hin");
case 3:
continue;
default:
printf("Byen");
}
return 0;
}
OUTPUT: Misplaced Continue
11. #include<stdio.h>
int main()
{
int i=4;
switch(i)
{
default:
printf("This is
defaultn");
case 1:
printf("This is case
1n");
break;
case 2:
printf("This is case
2n");
break;
case 3:
printf("This is case 3n");
}
return 0;
}
Output:
This is default
This is case1
12. main()
{
float me = 1.1;
double you = 1.1;
if(me==you)
printf("I love SWEETS");
else
printf("I hate MEDICINES");
}
Answer:
I hate MEDICINES

Switch statement mcq

  • 1.
  • 2.
    1. What isthe output? main() { int i=3; switch(i) { default:printf("zero"); case 1: printf("one"); break; case 2:printf("two"); break; case 3: printf("three"); break; } }
  • 3.
    Answer : three Explanation : Thedefault case can be placed anywhere inside the loop. It is executed only when all other cases doesn't match.
  • 4.
    2.#include<stdio.h> main() { int i=1,j=2; switch(i) { case 1:printf("GOOD"); break; case j: printf("BAD"); break; } }
  • 5.
    Answer: Compiler Error: Constantexpression required in function main. Explanation: The case statement can have only constant expressions (this implies that we cannot use variable names directly so an error).
  • 6.
    3.main() { float i=1.5; switch(i) { case 1:printf("1"); case 2: printf("2"); default : printf("0"); } }
  • 7.
    Answer: Compiler Error: switchexpression not integral Explanation: Switch statements can be applied only to integral types.
  • 8.
    4. #include<stdio.h> int main() { inti = 1; switch(i) { case 1: printf("Case1"); break; case 1*2+4: printf("Case2"); break; } return 0; }
  • 9.
    A. Error: incase 1*2+4 statement B. Error: No default specified C. Error: in switch statement D. No Error Answer: Option D Explanation: Constant expression are accepted in switch It prints "Case1"
  • 10.
    5. #include<stdio.h> int main() { inti=1; for(;;) { printf("%dn", i++); if(i>10) break; } return 0; }
  • 11.
    A. There shouldbe 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 Answer: Option D
  • 12.
    6. #include<stdio.h> int main() { inta = 10; switch(a) { } printf("This is c program."); return 0; }
  • 13.
    A. Error: Nocase statement specified B. Error: No default specified C. No Error D. Error: infinite loop occurs Answer: Option C
  • 14.
    7. #include<stdio.h> int main() { inti = 1; switch(i) { printf("This is c program."); case 1: printf("Case1"); break; case 2: printf("Case2"); break; } return 0; }
  • 15.
    A. Error: Nodefault specified B. Error: Invalid printf statement after switch statement C. No Error and prints "Case1" D. None of above Answer: Option C
  • 16.
    8. #include<stdio.h> int main() { inta = 5; switch(a) { case 1: printf("First"); case 2: printf("Second"); case 3 + 2: printf("Third"); case 5: printf("Final"); break; } return 0; }
  • 17.
    A. There isno 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. Answer: Option C
  • 18.
    9. include <stdio.h> intmain() { int i=0; for(i=0; i<20; i++) { switch(i) { case 0: i+=5; case 1: i+=2; case 5: i+=5; } default: i+=4; break; } printf("%d ", i); } getchar(); return 0; OUTPUT: 21
  • 19.
    10. #include<stdio.h> int main() { inti=3; switch(i) { case 1: printf("Hellon"); case 2: printf("Hin"); case 3: continue; default: printf("Byen"); } return 0; } OUTPUT: Misplaced Continue
  • 20.
    11. #include<stdio.h> int main() { inti=4; switch(i) { default: printf("This is defaultn"); case 1: printf("This is case 1n"); break; case 2: printf("This is case 2n"); break; case 3: printf("This is case 3n"); } return 0; } Output: This is default This is case1
  • 21.
    12. main() { float me= 1.1; double you = 1.1; if(me==you) printf("I love SWEETS"); else printf("I hate MEDICINES"); } Answer: I hate MEDICINES