Pointers - C Questions

Pointers Questions - 1 Pointers Questions - 2 Pointers Questions - 3 Pointers Questions - 4 Pointers Questions - 5 Pointers Questions - 6 Pointers Questions - 7 Pointers Questions - 8

Data Types - C Questions

Data Types Questions - 1 Data Types Questions - 2 Data Types Questions - 3 Data Types Questions - 4 Data Types Questions - 5

Operators - C Questions

Operators Questions - 1 Operators Questions - 2 Operators Questions - 3 Operators Questions - 4 Operators Questions - 5

Structures - C Questions

Structures Questions - 1 Structures Questions - 2 Structures Questions - 3 Structures Questions - 4 Structures Questions - 5

Files - C Questions

Files Questions - 1 Files Questions - 2 Files Questions - 3 Files Questions - 4 Files Questions - 5

printf - C Questions

printf Questions - 1 printf Questions - 2 printf Questions - 3 printf Questions - 4 printf Questions - 5

Variables - C Questions

Variables Questions - 1 Variables Questions - 2 Variables Questions - 3 Variables Questions - 4 Variables Questions - 5

Preprocessor Macros

Preprocessor Macros - 1 Preprocessor Macros - 2 Preprocessor Macros - 3 Preprocessor Macros - 4 Preprocessor Macros - 5

While Loop - C Questions

While Loop Questions - 1 While Loop Questions - 2 While Loop Questions - 3 While Loop Questions - 4 While Loop Questions - 5

for Loop - C Questions

for Loop Questions - 1 for Loop Questions - 2 for Loop Questions - 3 for Loop Questions - 4 for Loop Questions - 5

if else - C Questions

if else Questions - 1 if else Questions - 2 if else Questions - 3 if else Questions - 4 if else Questions - 5

Switch case - C Questions

Switch case Questions - 1 Switch case Questions - 2 Switch case Questions - 3 Switch case Questions - 4 Switch case Questions - 5

Array - C Questions

Array Questions - 1 Array Questions - 2 Array Questions - 3 Array Questions - 4 Array Questions - 5

Functions - C Questions

Functions Questions - 1 Functions Questions - 2 Functions Questions - 3 Functions Questions - 4 Functions Questions - 5

Memory Allocation

Memory Allocation - 1 Memory Allocation - 2
The ones who are crazy enough to think they can change the world are the ones who do.
- Steve Jobs

C Pointers Interview Questions

In most of the MNC interview questions such as in ZOHO interview question, IVTL Infoview interview questions, Amazon interview questions, GOOGLE interview questions, Infosys interview questions and even in Voonik interview questions, We come across several Tricky C Questions about which 2:5 of the questions are from pointers in c. Solving that kind of tricky C questions is not an easy task for all C programmers. We need more practices to solve it with ease. So we provide 25+ interesting C questions in pointers to make your MNC interview very easy.

Pointers Interview Questions

26. What will be the output of the C program?

#include<stdio.h>
int main(){
	char *ptr = "Pointer in c", arr[15];
	arr[15] = *ptr;
	printf("%c",arr[0]);
	return 0;
}

A. Garbage value

B. Run time error

C. P

D. Compile time error

x

 

Option: A

Explanation

A pointer variable which is initialized by a string cannot to assigned to a array variable of size n. Thus some garbage value or empty output will be displayed

Answer


27. What will be the output of the C program?

#include<stdio.h>
int main(){
 char arr[15] = "pointer array";
 int *ptr;
 ptr = arr;
 printf("%c",ptr[1]);
 return 0;
}

A. Garbage value

B. o

C. t

D. Compile time error

x

 

Option: C

Explanation

As pointer variable *ptr is declare under integer datatype, ptr[1] address points to the address of arr[4] because the size of integer datatype is 4 where as the size of char datatype is 1. Thus the value in arr[4] i.e) t is displayed.

Answer


28. What will be the output of the C program?

#include<stdio.h>
int main()
{
 int a = 10, b = 6;
 int *ptr;
 ptr = &b;
 printf(" %d ", a  **ptr);
 return 0;
}

A. Pointer type error

B. Run time error

C. Compilation error

D. 60

x

 

Option: D

Explanation

The above program is simply a arithmetic pointer type.
i.e) a * *ptr
i.e) 10 * 6 = 60

Answer


29. What will be the output of the C program?

#include<stdio.h>
int main()
{
 int *iptr;
 int i, arr[2][2] = {10, 11, 12, 13};
 iptr = *arr ;
 printf("%d ", *(iptr+2));
 return 0;
}

A. 12

B. 13

C. Compilation Error

D. Garbage value

x

 

Option: A

Explanation

Here, iptr holds the address of first element in an array arr i.e) address of 10. In printf statement we increment the address by (2 * sizeof(int)). Thus iptr now points to the address of 12. Asterisks (*) in printf statement prints the value inside the address i.e) 12 is outputted.

Answer


30. What will be the output of the C program?

#include<stdio.h>
int main()
{
char *cities[] = {"Delhi", "London", "Sydney"};
int **i = &cities[0];
printf("%c\n", **i);
return 0;
}

A. Delhi

B. Garbage address

C. D

D. Compile Time Error

x

 

Option: C

Explanation

Tha above program is some what tricky. Actually cities[] is an array which has its own address and it hold the address of first element( D ) in it as a value. Then integer pointer to pointer variable **i is assigned with the address of cities[0]. Now coming to the printf statement, *i tells the printf to print the value inside cities[0] which is nothing more than the address of first element in an array, then **i tells the printf statement to print the value of address stored in cities[0] i.e) D is outputted.

Answer


Report Us

We may make mistakes(spelling, program bug, typing mistake and etc.), So we have this container to collect mistakes. We highly respect your findings.

Report