Examveda

What will be the output of the following C code?
#include <stdio.h>
void main()
{
    int i = 0;
    if (i == 0)
    {
        printf("Hello");
        break;
    }
}

A. Hello is printed infinite times

B. Hello

C. Varies

D. Compile time error

Answer: Option D

Solution (By Examveda Team)

The correct answer is D: Compile time error

Here's why:

In C, the `break` statement is used to exit loops (like `for`, `while`, or `do-while`) or `switch` statements.

It's designed to jump out of these control structures.

In this code, `break` is placed directly inside an `if` block, but not within any loop or `switch`.

The C compiler will detect that `break` is used in an invalid context.

Therefore, the program will result in a compile-time error, indicating that the `break` statement is misplaced. The program won't even run.

In summary: The `break` statement is only valid inside loops or `switch` statements.

This Question Belongs to C Program >> Control Structures

Join The Discussion

Comments (1)

  1. Tawana Kapofu
    Tawana Kapofu:
    4 months ago

    The break statement is only allowed inside loops (for, while, do-while) or switch statements.
    In this code, break; is used inside an if block, but not within any loop or switch, so the compiler will throw an error.

Related Questions on Control Structures