GATE CS 2021 Set 1 — Question 47
Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.MCQ+2 / -0.67MediumData Types & OperatorsC ProgrammingProgramming & Data StructuresControl Flow
Programming & Data Structures → C Programming → Control Flow
Last updated
Question
Consider the following ANSI C program.Which one of the following options is correct?
#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;
}
Correct answer
(B) The program will compile successfully and output 10 when executed.
Solution
Let's trace the execution of the program:
1.Initialize
count = 0 and i = 0.2.The loop runs for .
3.Inside the loop, the condition is
(j >= 0) && (i++). Due to short-circuit evaluation of &&:- For :
j >= 0is false.i++is not executed.countremains 0. - For :
j >= 0is true.i++is executed. The post-increment returns the old value ofi(which is 0).true && 0is false.ibecomes 1.countremains 0. - For :
j >= 0is true.i++is executed. It returns 1.true && 1is true.ibecomes 2.count = 0 + 1 = 1. - For :
j >= 0is true.i++is executed. It returns 2.true && 2is true.ibecomes 3.count = 1 + 2 = 3. - For :
j >= 0is true.i++is executed. It returns 3.true && 3is true.ibecomes 4.count = 3 + 3 = 6.
count = count + i = 6 + 4 = 10.5.The program outputs 10.
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]