iGET

C Programming - MCQ Practice Questions

C questions in placement tests and university exams are rarely about syntax alone. Most of what you will find here is output prediction, pointer arithmetic, arrays and strings, structures and unions, storage classes, recursion, and file handling. The explanations walk through memory behaviour step by step, which is usually where the confusion sits rather than in the code itself.

972 questions | 100% Free

Q.1Easy

Which header file is required for dynamic memory allocation functions?

Q.2Easy

What does calloc() do differently from malloc()?

Q.3Medium

What will be the output of the following code?
int *ptr = malloc(sizeof(int));
if(ptr == NULL) printf("Failed");
else printf("Success");

Q.4Easy

Which function is used to free dynamically allocated memory?

Q.5Medium

What is a memory leak in C?

Q.6Medium

What happens when you try to access memory after calling free()?

Q.7Medium

What is the purpose of realloc() function?

Q.8Medium

Which of the following is correct for dynamic array allocation?

Q.9Medium

What is double free error?

Q.10Medium

Analyze this code:
char *str = malloc(5);
strcpy(str, "Hello");
How many bytes should malloc allocate for safety?

Q.11Medium

What is the output?
int *p = malloc(sizeof(int) * 3);
p[0] = 1; p[1] = 2; p[2] = 3;
printf("%d", *(p+2));

Q.12Hard

What will happen if malloc() fails and returns NULL but code doesn't check?

Q.13Hard

Which statement about dynamic memory is TRUE?

Q.14Hard

What is the issue in this code?
void func() {
int *p = malloc(sizeof(int));
*p = 5;
}
int main() {
func();
// p is not accessible here
return 0;
}

Q.15Hard

What is the correct way to allocate memory for 2D dynamic array (3x4)?

Q.16Hard

What does this realloc() call do?
int *p = malloc(5 * sizeof(int));
p = realloc(p, 10 * sizeof(int));

Q.17Easy

How much memory is allocated by malloc(sizeof(int) * 10) on a 32-bit system where sizeof(int) = 4?

Q.18Easy

Which header file must be included to use malloc(), calloc(), and free() functions?

Q.19Easy

What is the key difference between malloc() and calloc()?

Q.20Medium

Which of the following correctly allocates memory for an array of 5 strings (each max 20 characters)?