32.5 연습문제: switch에서 반복문 빠져나오기

다음 소스 코드를 완성하여 "1입니다."가 한 번만 출력되게 만드세요.

practice_goto_switch.c

#include <stdio.h>

int main()
{
    int num1 = 1;

    for (int i = 0; i < 10; i++)
    {
        switch (num1)
        {
        case 1:
            printf("1입니다.\n");
             ______________
        default:
            break;
        }
    }

___________
    return 0;
}

실행 결과

1입니다.

정답

 goto EXIT;
 EXIT:

해설

for 반복문으로 10번 반복하고 있습니다. 만약 case 1:에서 break를 사용하면 switch만 빠져나가고, for 반복문은 계속 실행되기 때문에 "1입니다"가 10번 출력됩니다. 따라서 for 반복문 바깥에 레이블 EXIT를 만들고, case 1:에서 goto를 사용하여 EXIT로 이동하면 switchfor에서 한 번에 빠져나올 수 있습니다.