Open In App

GATE | Sudo GATE 2020 Mock II (10 January 2019) | Question 27

Like Article
Like
Save Article
Save
Share
Report issue
Report

Choose the best statement with respect to following three program snippets.




/*Program Snippet 1 with for loop*/
for (i = 0; i < 10; i++)
{
   /*statement1*/
   continue;
   /*statement2*/
}
  
/*Program Snippet 2 with while loop*/
i = 0;
while (i < 10)
{
   /*statement1*/
   continue;
   /*statement2*/
   i++;
}
  
/*Program Snippet 3 with do-while loop*/
i = 0;
do
{
   /*statement1*/
   continue;
   /*statement2*/
   i++;
}while (i < 10);


(A) All the loops are equivalent i.e. any of the three can be chosen and they all will perform exactly same.
(B) continue can’t be used with all the three loops in C.
(C) After hitting the continue; statement in all the loops, the next expression to be executed would be controlling expression (i.e. i < 10) in all the 3 loops.
(D) None of the above is correct.


Answer: (D)

Explanation:

First and foremost, continue can be used in any of the 3 loops in C. In case of “for” loop, when continue is hit, the next expression to be executed would be i++ followed by controlling expression (i.e. i < 10). In case of “while” loop, when continue is hit, the next expression to be executed would be controlling expression (i.e. i < 10). In case of “do-while” loop, when continue is hit, the next expression to be executed would be controlling expression (i.e. i < 10). That’s why “while” and “do-while” loops would behave exactly same but not the “for” loop. Just to re-iterate, i++ would be executed in “for” loop when continue is hit.

Option (D) is correct.

Quiz of this Question


Last Updated : 09 Jan, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads