Control Instructions - Programming

Q1:

Which of the following statements are correct about the below program?
#include<stdio.h>
int main()
{
    int i = 0;
    i++;
    if(i <= 5)
    {
        printf('AptitudeCrack\n');
        exit(0);
        main();
    }
    return 0;
}

A The program prints 'AptitudeCrack' 5 times

B The program prints 'AptitudeCrack' one time

C The call to main() after exit() doesn't materialize.

D The compiler reports an error since main() cannot call itself.

ANS:A - The program prints 'AptitudeCrack' 5 times

Step 1: int i = 0; here variable i is declared as an integer type and initialized to '0'(zero).
Step 2: i++; here variable i is increemented by 1(one). Hence, i = 1
Step 3: if(i <= 5) becomes if(1 <= 5) here we are checking '1' is less than or equal to '5'. Hence the if condition is satisfied.
Step 4: printf('AptitudeCrack\n'); It prints 'AptitudeCrack'
Step 5: exit(); terminates the program execution.
Hence the output is 'AptitudeCrack'.