# Subex Papers: Sample Questions 16 - 17 of 19

Examrace Placement Series prepares you for the toughest placement exams to top companies.

## Question number: 16

### Write in Short

What will be the output of following code?

1. `#define MAX(A , B) ( A < B ? B : A )`
2. `#include <stdio.h>`
3. `int main()`
4. `{`
5. `    int a = MAX( 4+2 , 3×2) ;`
6. `    printf(" %d " , a);`
7. `}`

### Explanation

• Here, MAX function is defined which will give the maximum value between given two. For it ternary operator is used. If A is less then B then B will be the output of MAX function. But if that condition becomes false then output of MAX function will be the value of A.
• Here, A = 4 + 2 = 6
• And, B = 3 2 = 6
• So, MAX (6,6) function is called in the main () function which has integer return type. So 6 > 6 condition is checked and it becomes false because both are equal. If this type of situation occurs then in ternary operator only false part will execute after? . So, value assigned to a will be, a = 3 2 = 6 and it gets printed.

## Question number: 17

### Write in Short

What will be the output of the following code?

1. `main()`
2. `{`
3. `    int a[]={1,2,9,8,6,3,5,7,8,9};`
4. `    int *p=a+1;`
5. `    int*q=a+6;`
6. `    printf(“n%d”,q-p);`
7. `}`

### Explanation

• Here, a is an array of 10 integers, where, a [0] = 1, a [1] = 2, a [2] = 9, a [3] = 8, a [4] = 6, a [5] = 3, a [6] = 5, a [7] = 7, a [8] = 8, a [9] = 9
• p and q are the integer pointers. In the printf () function we want to print the difference between q and p on the next line which will also be an integer. Here, q – p is evaluated as sizeof (q – p). q is initialized with a + 6 and p is initialized with a + 1. So, difference between both the integer pointers is five. So, 5 will get printed on the screen.