The ones who are crazy enough to think they can change the world are the ones who do.- Steve Jobs
In most of the MNC interview questions such as in ZOHO interview question, IVTL Infoview interview questions, Amazon interview questions, GOOGLE interview questions, Infosys interview questions and even in Voonik interview questions, We come across several Tricky C Questions about which 2:5 of the questions are from Switch Case in c. Solving that kind of tricky C questions is not an easy task for all C programmers. We need more practices to solve it with ease. So we provide 25+ interesting C questions in Switch Case to make your MNC interview very easy.
6. What will be the output of the C program?
#include<stdio.h> int main() { switch(2/3) { case 1: printf("case 1 executed "); case 2: printf("case 2 execcuted "); break; default: printf("Default block executed"); } return 0; }
B. case 1 executed case 2 executed ✔
Option: B
In C Programming, by default literals are unsigned integer data type. So when we perform dividing operation(3/2) returns 1 instead of 1.500000. Finally the case 1 executed and there is no break statement so case 2 also executed.
7. What will be the output of the C program?
#include<stdio.h> int main() { int i = 1; switch(i) { case i: printf("case 1 executed"); break; case i + 1; printf("case 2 executed"); break; default: printf("default block executed"); break; } return 0; }
Option: A
Compilation Error: Constant expression required. The case statement accepts only a constant expression.
8. What will be the output of the C program?
#include<stdio.h> #define N 1.5 int main() { int i = 6; switch(i) { case N + 5: printf("Switch ON the fan"); break; case N * 4: printf("Switch ON the Air Cooler"); break; default: printf("Save Energy"); } return 0; }
Option: D
Compilation Error: case label does not reduce to an integer constant
case expression should be an integer constant otherwise compiler raises an error message. Note: Case expression accepts both integer and char constant.
9. What will be the output of the C program?
#include<stdio.h> int main() { switch(*(3 + "I LOVE" "ABCD" + 3)) { case 'A': printf("Apple Mac"); break; case 'B': printf("Windows"); break; case 'C': printf("Great Linux"); break; default: printf("All the above"); } return 0; }
Option: A
The expression in above C program can be solved:
= (*(3 + "I LOVE" "ABCD" + 3))
= (*(6 + "I LOVE" "ABCD"))
= (*(6 + "I LOVEABCD"))
Now it automatically take the sixth character of a string "I LoveABCD". Count starts from 0.
10. What will be the output of the C program?
#include<stdio.h> int main(){ char *str1 = "First"; char *str2 = "Second"; switch(*str1) { case "First": printf("USAIN BOLT"); case "Second": printf("JUSTIN GATLIN"); break; default: printf("Others"); } return 0; }
Option: C
Compilation Error: Constant expression required
Expression should not be a string.
We may make mistakes(spelling, program bug, typing mistake and etc.), So we have this container to collect mistakes. We highly respect your findings.
© Copyright 2019