C Programming break and continue Statement

The break statement terminates the loop, whereas continue statement forces the next iteration of the loop. In this tutorial, you will learn to use break and continue with the help of examples.

It is sometimes desirable to skip some statements inside the loop or terminate the loop immediately without checking the test expression.

In such cases, break and continue statements are used.


break Statement

The break statement terminates the loop (for, while and do...while loop) immediately when it is encountered. Its syntax is:

break;

The break statement is almost always used with if...else statement inside the loop.


How break statement works?

Working of break statement


Example 1: break statement

// Program to calculate the sum of maximum of 10 numbers
// If negative number is entered, loop terminates and sum is displayed

# include <stdio.h>
int main()
{
    int i;
    double number, sum = 0.0;

    for(i=1; i <= 10; ++i)
    {
        printf("Enter a n%d: ",i);
        scanf("%lf",&number);

        // If user enters negative number, loop is terminated
        if(number < 0.0)
        {
            break;
        }

        sum += number; // sum = sum + number;
    }

    printf("Sum = %.2lf",sum);
    
    return 0;
}

Output

Enter a n1: 2.4
Enter a n2: 4.5
Enter a n3: 3.4
Enter a n4: -3
Sum = 10.30

This program calculates the sum of maximum of 10 numbers. Why maximum of 10 numbers? It's because if the user enters negative number, the break statement is executed which terminates the for loop, and sum is displayed.

In C, break is also used with switch statement.


continue Statement

The continue statement skips statements after it inside the loop. Its syntax is:

continue;

The continue statement is almost always used with if...else statement.


How continue statement works?

Working of continue statement in C programming


Example 2: continue statement

// Program to calculate sum of maximum of 10 numbers
// Negative numbers are skipped from calculation

# include <stdio.h>
int main()
{
    int i;
    double number, sum = 0.0;

    for(i=1; i <= 10; ++i)
    {
        printf("Enter a n%d: ",i);
        scanf("%lf",&number);

        if(number < 0.0)
        {
            continue;
        }

        sum += number; // sum = sum + number;
    }

    printf("Sum = %.2lf",sum);
    
    return 0;
}

Output

Enter a n1: 1.1
Enter a n2: 2.2
Enter a n3: 5.5
Enter a n4: 4.4
Enter a n5: -3.4
Enter a n6: -45.5
Enter a n7: 34.5
Enter a n8: -4.2
Enter a n9: -1000
Enter a n10: 12
Sum = 59.70

In the program, when the user enters positive number, the sum is calculated using sum += number; statement.

When the user enters negative number, the continue statement is executed and skips the negative number from calculation.