The ones who are crazy enough to think they can change the world are the ones who do.
- Steve Jobs

C Switch Case Tricky Questions

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.

C Switch Case Questions

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;
}

A. case 1 executed

B. case 1 executed case 2 executed

C. case 2 executed

D. Compilation Error

x

 

Option: B

Explanation

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.

Answer


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;
}

A. Compilation Error

B. case 1 executed

C. case 2 executed

D. default block executed

x

 

Option: A

Explanation

Compilation Error: Constant expression required. The case statement accepts only a constant expression.

Answer


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;
}

A. Switch ON the fan

B. Switch ON the Air Cooler

C. Save Energy

D. Compilation Error

x

 

Option: D

Explanation

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.

Answer


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;
}

A. Apple Mac

B. Windows

C. Great Linux

D. All the above

x

 

Option: A

Explanation

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.

Answer


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;
}

A. USAIN BOLT

B. JUSTIN GATLIN

C. Compilation Error

D. Others

x

 

Option: C

Explanation

Compilation Error: Constant expression required
Expression should not be a string.

Answer


Report Us

We may make mistakes(spelling, program bug, typing mistake and etc.), So we have this container to collect mistakes. We highly respect your findings.

Report