Consider the following ANSI C program:
#include <stdio.h>
#include <stdlib.h>
struct Node{
int value;
struct Node *next;
};
int main(){
struct Node *boxE, *head, *boxN; int index = 0;
boxE=head=(struct Node *)malloc(sizeof(struct Node));
head->value = index;
for (index = 1; index <= 3; index++){
boxN = (struct Node *) malloc(sizeof(struct Node));
boxE->next = boxN;
boxN->va1ue = index;
boxE = boxN: }
for (index = 0; index <= 3; index++) {
printf(“Value at index %d is %d\n”, index, head->value);
head = head->next;
printf(“Value at index %d is %d\n”, index+1, head->value); } }
Which one of the statements below is correct about the program? 2021 SET 2 || MCQ || 2-mark
It dereferences an uninitialized pointer that may result in a run-time error.
It has a missing return which will be reported as an error by the compiler.
Upon execution, the program creates a linked-list of five nodes.
Upon execution, the program goes into an infinite loop.
This question is part of this quiz :
GATE|| C Programming & Data Structure || Pyqs (2010 to 2025 ),GATE || Arrays | Stacks | Queue | Linked list || PYQS (2010 to 2025)