C | Loops & Control Structure | Question 7

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <stdio.h>
int i;
int main()
{
    if (i);
    else
        printf("Ëlse");
    return 0;
}

chevron_right


What is correct about the above program?
(A) if block is executed.
(B) else block is executed.
(C) It is unpredictable as i is not initialized.
(D) Error: misplaced else


Answer: (B)

Explanation: Since i is defined globally, it is initialized with default value 0. The Else block is executed as the expression within if evaluates to FALSE. Please note that the empty block is equivalent to a semi-colon(;). So the statements if (i); and if (i) {} are equivalent.



My Personal Notes arrow_drop_up