문제 설명
j == 4일 때 완전히 바깥 루프까지 빠져 나오려면?
break문은 가장 가까이에 있는 for loop를 빠져 나온다
코드를 변형하여 다중 루프를 탈출하기 위한 코드를 구현하여 보자
#include <stdio.h>
void main(void)
{
int i, j;
for (i = 0; i < 20; i++)
{
for (j = 0; j < 10; i++, j++)
{
if (j == 4) break;
printf("%d %d\n", i, j);
}
if (i % 3) continue;
}
}
출력 예시
0 0
1 1
2 2
3 3
정답 코드
#include <stdio.h>
void main(void)
{
int i, j, flag = 0;
for (i = 0; i < 20; i++)
{
for (j = 0; j < 10; i++, j++)
{
if (j == 4)
{
flag = 1;
break;
}
printf("%d %d\n", i, j);
}
if (flag != 0) break;
if (i % 3) continue;
}
}
메모
printf 내부의 \n 습관화 필요