29.1 break로 반복문 끝내기

먼저 무한 루프에서 숫자를 증가시키다가 100이 나오면 반복문을 끝내도록 만들어보겠습니다. 다음 내용을 소스 코드 편집 창에 입력한 뒤 실행해보세요.

break_while.c

#include <stdio.h>

int main()
{
    int num1 = 0;

    while (1)   // 무한 루프
    {
        num1++;  // num1을 1씩 증가시킴

        printf("%d\n", num1);

        if (num1 == 100)    // num1이 100일 때
            break;          // 반복문을 끝냄. while의 제어흐름을 벗어남
    }

    return 0;
}

실행 결과

... (생략)
96
97
98
99
100

while1을 지정하여 무한 루프를 만들고 그 안에서 num1을 1씩 증가시키고 if를 이용하여 num1이 100이 될 때 break를 실행합니다. 이렇게 하면 무한 루프라도 1부터 100까지만 화면에 출력합니다. 즉, 반복문 안에서 break를 실행하면 반복문은 바로 끝납니다.

while(do while)뿐만 아니라 for에서도 break의 동작은 같습니다.

break_for.c

#include <stdio.h>

int main()
{
    int num1 = 0;

    for (;;)    // 무한 루프
    {
        num1++;  // num1을 1씩 증가시킴

        printf("%d\n", num1);

        if (num1 == 100)    // num1이 100일 때
            break;          // 반복문을 끝냄. for의 제어흐름을 벗어남
    }

    return 0;
}

실행 결과

... (생략)
96
97
98
99
100

여기서는 무한 루프를 예로 들었지만 반복 횟수가 정해져 있더라도 break를 사용하면 반복문은 바로 끝납니다. 다음은 반복문과 break의 동작을 나타낸 순서도 입니다.

그림 29‑2 break로 반복문 끝내기