Sail E0 Webinar
Question


What would be the output of the following program ?


#include<stdio.h>
int main()
{
static int a[20];
int i = 0;
a[i] = i ;
printf("%d, %d, %d\n", a[0], a[1], i);
return 0;
}
Options:
A .  1,0,1
B .  1,1,1
C .  0,0,0
D .  0,1,0
Answer: Option C


Step 1: static int a[20]; here variable a is declared as an integer type and static. If a variable is declared as static and it will ne automatically initialized to value '0'(zero).


Step 2: int i = 0; here vaiable i is declared as an integer type and initialized to '0'(zero).
Step 3: a[i] = i ; becomes a[0] = 0;
Step 4: printf("%d, %d, %d`setminus`n", a[0], a[1], i);
Here a[0] = 0, a[1] = 0(because all staic variables are initialized to '0') and i = 0.
Step 4: Hence the output is "0, 0, 0".




Was this answer helpful ?
Next Question

Submit Solution

Your email address will not be published. Required fields are marked *

Latest Videos

Latest Test Papers