28.5 입력한 횟수대로 반복하기

이번에는 입력한 횟수대로 반복을 해보겠습니다. 다음 내용을 소스 코드 편집 창에 입력하세요.

while_scanf_increment.c

#define _CRT_SECURE_NO_WARNINGS    // scanf 보안 경고로 인한 컴파일 에러 방지
#include <stdio.h>

int main()
{
    int count;

    scanf("%d", &count);    // 값을 입력받음

    int i = 0;
    while (i < count)                      // i가 count보다 작을 때 반복
    {
        printf("Hello, world! %d\n", i);   // Hello, world!와 i의 값을 함께 출력
        i++;                               // i를 1씩 증가시킴
    }

    return 0;
}

소스를 컴파일하여 실행한 뒤 5를 입력하고 엔터 키를 누르세요.

실행 결과

5 (입력)
Hello, world! 0
Hello, world! 1
Hello, world! 2
Hello, world! 3
Hello, world! 4

scanf 함수로 입력 값을 받아서 count 변수에 저장했습니다. 그리고 while 반복문의 조건식에서 i < count와 같이 지정하여 count에 들어있는 값만큼 반복하도록 하였습니다. 여기서는 5를 입력했으므로 Hello, world!는 5번만 출력됩니다.

이번에는 초깃값을 받은 뒤 초깃값만큼 출력해보겠습니다.

while_scanf_decrement.c

#define _CRT_SECURE_NO_WARNINGS    // scanf 보안 경고로 인한 컴파일 에러 방지
#include <stdio.h>

int main()
{
    int count;

    scanf("%d", &count);    // 값을 입력받음

    while (count > 0)    // count가 0보다 클 때 반복
    {
        printf("Hello, world! %d\n", count);
        count--;         // count를 1씩 감소시킴
    }

    return 0;
}

실행 결과

5 (입력)
Hello, world! 5
Hello, world! 4
Hello, world! 3
Hello, world! 2
Hello, world! 1

scanf 함수로 입력 값을 받아서 count 변수에 저장한 뒤 조건식에서 count > 0와 같이 지정하여 count에 들어있는 값만큼 반복하도록 하였습니다. 여기서는 i를 선언하지 않고 count를 바로 사용하므로 변화식은 count--로 지정하여 반복문이 실행될 때마다 count를 감소시키고 count가 0이 되면 반복문을 끝내도록 만들었습니다.