Programming and Data Structures · Programming in C
Official IIT answer key · IIT Bombay · Audited Aug 2026
GATE CSE 2021 Set 1 Q37 · MCQ · 2 marks
#include <stdio.h>
int main()
{
int i, j, count;
count = 0;
i = 0;
for (j = -3; j <= 3; j++)
{
if ((j >= 0) && (i++))
count = count + j;
}
count = count + i;
printf("%d", count);
return 0;
}
Which one of the following options is correct?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 ANSI C program. #include int main() int i, j, count; count = 0; i = 0; for (j = -3; j = 0) && (i++)) count = count + j; count = count + i; printf("%d", count); return 0; Which one of the following options is correct?
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.
