Page 36 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 36
do { do {
/* no는 2자리가 아닙니다. */ /* no는 2자리입니다. */
} while(no < 10 || no > 99); } while(!(no >= 10 && no <= 99);
1 2
같습니다 .
명령문 명령문
Yes Yes
계속 조건 ! 종료 조건
No No
[그림 1C-7] 반복의 연속 조건과 종료 조건
다중 루프
지금까지 다룬 프로그램은 단순한 반복을 수행했습니다. 그런데 반복 안에서 다시 반복할 수
있습니다. 이런 반복을 루프가 중첩되는 수준에 따라 ‘이중 루프, 삼중 루프’라고 합니다.
곱셈표
이중 루프를 사용하는 알고리즘의 예로 곱셈표를 출력하는 프로그램을 실습 1-7에 나타내었
습니다.
실습 1-7 •완성 파일 chap01/multi99table.c
01 /* 곱셈표를 출력합니다. */
실행 결과
02 #include <stdio.h>
----- 곱셈표 -----
03 1 12 13 14 15 16 17 18 19
04 int main(void) 2 14 16 18 10 12 14 16 18
05 { 3 16 19 12 15 18 21 24 27
06 int i, j; 4 18 12 16 20 24 28 32 36
07 printf("----- 곱셈표 -----\n"); 5 10 15 20 25 30 35 40 45
for(i = 1; i <= 9; i++) {
08 for(i = 1; i <= 9; i++) { 6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
09 for(j = 1; j <= 9; j++)
for(j = 1; j <= 9; j++)
for(j = 1; j <= 9; j++)
10 printf ( "% 3d", i * j); 8 16 24 32 40 48 56 64 72
printf ( "% 3d", i * j);
printf ( "% 3d", i * j);
9 18 27 36 45 54 63 72 81
putchar('\n');
11 putchar('\n');
putchar('\n');
12 } }
13
14 return 0;
15 }
36 C 알고리즘