C | Loops & Control Structure | Question 5
Predict the output of the below program:
#include <stdio.h> #define EVEN 0 #define ODD 1 int main() { int i = 3; switch (i & 1) { case EVEN: printf ( "Even" ); break ; case ODD: printf ( "Odd" ); break ; default : printf ( "Default" ); } return 0; } |
(A) Even
(B) Odd
(C) Default
(D) Compile-time error
Answer: (B)
Explanation: The expression i & 1 returns 1 if the rightmost bit is set and returns 0 if the rightmost bit is not set. As all odd integers have their rightmost bit set, the control goes to the block labeled ODD.
Attention reader! Don’t stop learning now. Get hold of all the important C++ Foundation and STL concepts with the C++ Foundation and STL courses at a student-friendly price and become industry ready.