Skip to content
GATEiit

GATE CSE 2026 Session 1 Q34: Output of a C function with a shadowed block variable

Question

Consider the following program in C:

#include <stdio.h>
void func(int i, int j) {
  if(i < j) {
    int i = 0;
    while (i < 10) {
      j += 2;
      i++;
    }
  }
  printf("%d", i);
}
int main() {
  int i = 9, j = 10;
  func(i, j);
  return 0;
}

The output of the program is _________. (answer in integer)

Note: Assume that the program compiles and runs successfully.

Try it: numerical answer: type the value

Numerical answer. No negative marking.
Show answer and explanation

Answer: 9 (official GATE 2026 final answer key)

Concept used: Block scope: a variable declared inside a block shadows the outer one only within that block.

First step: The inner int i lives only inside the if block, so printf sees the parameter i.

Full step-by-step solution

Detailed working, common mistakes and linked mock tests will be available with a free GATEiit account. Log-in is coming soon.

Share this question

WhatsAppDownload image

Source: official GATE 2026 Session 1 CS question paper and final answer key, organised by IIT Guwahati. Question paper · Answer key