Programming and Data Structures · Programming in C
Official IIT answer key · IISc Bangalore · Audited Aug 2026
GATE CSE 2016 Set 2 Q37 · NAT · 2 marks
int f(int *p, int n)
{
if (n <= 1) return 0;
else return max(f(p+1,n-1),p[0]-p[1]);
}
int main()
{
int a[] = {3,5,2,6,4};
printf("%d", f(a,5));
}
Note: max(x,y) returns the maximum of x and y.
The value printed by this program is _______.Key concept
No account needed
Sit 5 related Programming in CPYQs 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
In GATE CS, Programming in C is tested extensively through rigorous code tracing, pointer mechanics, and fundamental semantics rather than high-level syntax trivia. Questions emphasize pointer arithmetic and multidimensional array decay, storage classes (especially static local variables), evaluation order, side effects of increment/decrement operators, parameter passing mechanisms (pass-by-value vs pass-by-reference), and recursive program state tracking. The topic features a nearly balanced split between NAT and MCQ items across 1-mark and 2-mark categories, demanding precise, bug-free execution traces without a compiler.
Full Programming in C guide →Consider the following program: int f(int *p, int n) if (n Note: (x, y) returns the maximum of x and y. The value printed by this program 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.
