GATE CS 2016 Set 1 — Question 45
Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.MCQ+2 / -0.67MediumFunctions & RecursionC ProgrammingProgramming & Data StructuresStorage Classes
Programming & Data Structures → C Programming → Functions & Recursion
Last updated
Question
What will be the output of the following C program?
void count(int n){
static int d=1;
printf("%d ", n);
printf("%d ", d);
d++;
if(n>1) count(n-1);
printf("%d ", d);
}
void main(){
count(3);
}
Correct answer
(A) 3 1 2 2 1 3 4 4 4
Solution
Let's trace the execution.
d is a static variable initialized to 1. It retains its value across function calls.1.
main calls count(3):- Prints
n: 3 - Prints
d: 1 -
dbecomes 2. -
n > 1(3 > 1) is true. Callscount(2).
count(2):- Prints
n: 2 - Prints
d: 2 (current value of staticd) -
dbecomes 3. -
n > 1(2 > 1) is true. Callscount(1).
count(1):- Prints
n: 1 - Prints
d: 3 (current value of staticd) -
dbecomes 4. -
n > 1(1 > 1) is false. Recursion stops. - Prints
d: 4 (current value of staticd) - Returns to
count(2).
count(2):- Prints
d: 4 (current value of staticd) - Returns to
count(3).
count(3):- Prints
d: 4 (current value of staticd) - Returns to
main.
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 Q19Consider the following three ANSI-C programs, P1, P2, and P3. P1 [code] P2 [code] **P3**…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]