더북(TheBook)

난수 초기화가 어떤 건지 예제로 살펴봅시다. 다음 예제는 for 문을 사용해 0부터 9 사이에서 숫자를 10번 뽑습니다. 그리고 뽑은 숫자를 출력합니다. 코드를 실행해 볼까요?

4.4.1 난수.c

int main(void) {
    printf("난수 초기화 이전...\n");
    for (int i = 0; i < 10; i++) {
        printf("%d ", rand() % 10);
    }
    return 0;
} 

실행결과 icon_con

난수 초기화 이전...
1 7 4 0 9 4 8 8 2 4

실행했더니 숫자가 무작위로 뽑힌 것처럼 보이죠. 그럼 다시 한번 실행해 보세요. 다시 실행해도 여전히 1 7 4 0 9 4 8 8 2 4가 나옵니다. 여러 번 실행해도 실행할 때마다 똑같은 숫자가 나옵니다. 난수 초기화를 하는 이유는 바로 이 때문입니다. 그러면 난수 초기화를 하고 다시 코드를 실행해 봅시다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.