26.0 for 반복문으로 Hello, world! 100번 출력하기

Hello, world! 문자열을 100번 출력하려면 어떻게 해야 할까요? 가장 간단한 방법은 printf 함수를 100번 사용해서 출력하는 것입니다.

#include <stdio.h>
 
int main()
{
    // printf 100번 사용
    printf("Hello, world!\n");
    printf("Hello, world!\n");
    printf("Hello, world!\n");
    printf("Hello, world!\n");
    // ... 생략
    printf("Hello, world!\n");
    printf("Hello, world!\n");
    printf("Hello, world!\n");
    printf("Hello, world!\n");

    return 0;
}

복사, 붙여 넣기로 printf("Hello, world!\n");을 100번 붙여 넣으면 어렵지 않게 완성할 수 있습니다. 하지만 1,000번 또는 10,000번을 출력한다면 어떻게 될까요? 코드를 붙여 넣는데 시간이 너무 오래 걸리기도 하고, 프로그래밍 측면에서도 비효율적입니다. 그래서 대부분의 프로그래밍 언어에서는 반복되는 작업을 간단하게 처리하기 위해 반복문이라는 기능을 제공해주는데 반복 횟수, 반복 및 정지 조건을 자유자재로 제어할 수 있습니다.

C 언어의 for 반복문은 다음과 같이 괄호 안에 초기식, 조건식, 변화식을 지정하며 이 부분을 루프 선언문(loop statement)이라고 부릅니다. 그리고 중괄호 안에 반복할 코드를 작성하는데 이 부분을 루프 본체(loop body)라고 부릅니다

for (초기식; 조건식; 변화식) // ← 루프 선언문(loop statement)
{
    반복할 코드
}
// ↑ 루프 본체(loop body)

다음은 for 반복문의 실행 과정입니다. 먼저 초기식부터 시작하여 조건식을 판별하는데 여기서 조건식이 참이면 반복할 코드(루프 본체)를 실행하고, 변화식을 수행합니다. 그리고 다시 조건식을 판별하여 참이면 코드를 계속 반복하고, 거짓이면 반복문을 끝낸 뒤 다음 코드를 실행합니다.

그림 26‑1 for 반복문의 동작 과정

조건식 → 루프 본체 → 변화식 → 조건식으로 순환하는 부분을 루프(loop)라고 부릅니다.