1. 

What will be the output of the program?

#include<stdio.h>
int main()
{
    int i=-3, j=2, k=0, m;
    m = ++i && ++j && ++k;
    printf("%d, %d, %d, %d\n", i, j, k, m);
    return 0;
}

A. -2, 3, 1, 1
B. 2, 3, 1, 2
C. 1, 2, 3, 1
D. 3, 3, 1, 2

2. 

Assuming, integer is 2 byte, What will be the output of the program?

#include<stdio.h>

int main()
{
    printf("%x\n", -2<<2);
    return 0;
}

A. ffff
B. 0  
C. fff8
D. Error

3. 

What will be the output of the program?

#include<stdio.h>
int main()
{
    int i=-3, j=2, k=0, m;
    m = ++i || ++j && ++k;
    printf("%d, %d, %d, %d\n", i, j, k, m);
    return 0;
}

A. 2, 2, 0, 1
B. 1, 2, 1, 0
C. -2, 2, 0, 0
D. -2, 2, 0, 1

4. 

What will be the output of the program?

#include<stdio.h>
int main()
{
    int x=12, y=7, z;
    z = x!=4 || y == 2;
    printf("z=%d\n", z);
    return 0;
}

A. z=0
B. z=1
C. z=4
D. z=2

5. 

What will be the output of the 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;
}

A. 1, 0, 1
B. 1, 1, 1
C. 0, 0, 0
D. 0, 1, 0