Open In App

C Quiz – 105 | Question 3

Like Article
Like
Save
Share
Report

What would happen when we compile and run this program?




<br>
#include < stdio.h ><br>
int main()<br>
{<br>
  int i; <br>
  goto LOOP;<br>
  for (i = 0 ; i < 10 ; i++)<br>
  {<br>
     printf("GeeksQuiz \n");<br>
     LOOP:<br>
      break;<br>
  }<br>
  return 0;<br>
}<br>


(A) No compile error and it will print GeeksQuiz 10 times because goto label LOOP wouldn’t come in effect.
(B) No compile error and it’ll print GeeksQuiz only once because goto label LOOP would come in picture only after entering for loop.
(C) Compile Error because any goto label isn’t allowed in for loop in C.
(D) No compile error but behaviour of the program would depend on C compiler due to nondeterministic behaviour of goto statement.
(E) No compile error and it will not print anything.


Answer: (E)

Explanation: goto statement can be used inside a function and its label can point to anywhere in the same function. Here, for loop expressions i.e. i = 0 and i < 10 and i++ wouldn’t be executed at all. Because goto would make the program jump directly inside the for loop. And from there, it’ll execute break statement which would exit the loop. So effectively nothing would be printed.

Quiz of this Question


Last Updated : 29 Oct, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads