Programming and Data Structures · Recursion
Official IIT answer key · IIT Kanpur · Audited Aug 2026
GATE CSE 2015 Set 2 Q15 · MCQ · 1 mark
void foo(char *a){
if ( *a && *a != ' '){
foo(a+1);
putchar(*a);
}
}
The output of the above function on input "ABCD EFGH" isKey concept
No account needed
Sit 5 related RecursionPYQs as a guest. We'll score the set and show which traps cost marks — sign in only if you want to save the run.
Topic notes
GATE tests Recursion primarily through direct execution tracing of recursive C code snippets, stack-unwinding behavior (pre-order vs. post-order execution), and termination/infinite recursion analysis. Questions frequently incorporate static variables, pointer/reference aliasing, mutual recursion, and tree/array traversals to test whether candidates can systematically maintain call frames. In recent years, the focus has expanded from standard tracing to higher-order mathematical characterizations (e.g., finding the smallest input or maximum output value of composed recurrences).
Full Recursion guide →Consider the following function written in the C programming language. void foo(char *a) if ( *a && *a != ' ') foo(a+1); putchar(*a); The output of the above function on input "ABCD EFGH" is
Topic-wise GATE CS PYQs with verified steps
Independent practice explanation verified by the GateAI team. GATE is conducted by the IITs; question text follows the official paper.
