GATE CS 2017 Set 1 — Question 35
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 Structures
Programming & Data Structures → C Programming → Functions & Recursion
Last updated
Question
Consider the following two functions.The output printed when
void fun1(int n) {
if(n == 0) return;
printf("%d", n);
fun2(n - 2);
printf("%d", n);
}
void fun2(int n) {
if(n == 0) return;
printf("%d", n);
fun1(++n);
printf("%d", n);
}
fun1(5) is called isCorrect answer
(A) 53423122233445
Solution
Let's trace the execution of
Result: 53423122132435.
fun1(5):1.
fun1(5) called.- Prints 5.
- Calls
fun2(5 - 2)->fun2(3).
fun2(3) called.- Prints 3.
- Calls
fun1(++n)->fun1(4)(Note:nbecomes 4 infun2's scope before passing).
fun1(4) called.- Prints 4.
- Calls
fun2(4 - 2)->fun2(2).
fun2(2) called.- Prints 2.
- Calls
fun1(++n)->fun1(3)(Note:nbecomes 3).
fun1(3) called.- Prints 3.
- Calls
fun2(3 - 2)->fun2(1).
fun2(1) called.- Prints 1.
- Calls
fun1(++n)->fun1(2)(Note:nbecomes 2).
fun1(2) called.- Prints 2.
- Calls
fun2(2 - 2)->fun2(0). fun2(0)returns immediately.- Prints 2 (after return).
- Returns.
fun2(1):- Prints 1.
- Returns.
fun1(3):- Prints 3.
- Returns.
fun2(2):- Prints 2.
- Returns.
fun1(4):- Prints 4.
- Returns.
fun2(3):- Prints 3.
- Returns.
fun1(5):- Prints 5.
- Returns.
Result: 53423122132435.
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]