GATE CS 2026 Set 2 — Question 19
Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.MCQ+1 / -0.33EasyC ProgrammingProgramming & Data StructuresScoping (Static, Dynamic)Semantic AnalysisCompiler DesignStorage Classes
Compiler Design → C Programming → Scoping (Static, Dynamic)
Last updated
Question
Consider the following three ANSI-C programs, P1, P2, and P3.P1
P2
P3
Which one of the following statements is true?
#include <stdio.h>
int a=5;
int main(){
int a=7;
return(0);
}
#include <stdio.h>
int main(){
int a=5;
int a=7;
return(0);
}
#include <stdio.h>
int main(){
int a=5;
float a=7;
return(0);
}
Correct answer
(A) Only P1 will compile without any error
Solution
P1: This program declares a global variable
int a = 5; and a local variable int a = 7; inside main. In C, a local variable can shadow a global variable with the same name. This is valid and will compile.P2: This program declares int a = 5; and then attempts to redeclare int a = 7; within the same scope (the main function). Redeclaration of a variable in the same scope is not allowed in C. This will cause a compile-time error.P3: This program declares int a = 5; and then attempts to declare float a = 7; in the same scope. Even though the types are different, the identifier a is already defined in this scope. This results in a conflicting types/redefinition error. This will cause a compile-time error.Therefore, only P1 compiles without error.Continue learning with Success Tracker
A step still unclear? Work through it with support
Use Success Tracker to ask about the reasoning, then try another GATE CS question to check your understanding.
AI-powered practice· Unlimited practice on eligible plans
- PYQs with solutions
- Attempt available previous-year questions, then compare your reasoning with the worked solution. Coverage varies by stream.
- Practice that adapts
- Choose a topic, work on weaker areas and bookmark questions to revisit. Your attempts feed your progress tracking.
- AI doubt support
- Ask follow-up questions about a step or concept while practising, instead of stopping at the final answer.
Unlimited practice is available on eligible plans. Free practice and AI usage have limits; check the current plan allowances before choosing.
This page stays readable without an account. AI responses can be wrong; check them against the solution and source material.
More questions on C Programming
2026 Set 2 Q12The set T represents various traversals over binary tree. The set S represents the order of…2026 Set 2 Q17In C runtime environment, which one of the following is stored in heap?2026 Set 1 Q23Let be an odd number greater than 100. Consider a binary minheap with elements stored in an…2026 Set 1 Q24Consider a hash table that is initially empty. The hash table is maintained…2026 Set 1 Q27Consider the following C statements: Which of the following options is/are correct? [figure]