C Language

C언어 라이브러리의 rand() 함수

567Rabbit 2024. 6. 18. 21:17

rand() 라이브러리 함수

 

- 무작위 숫자(난수)를 생성하는 데 사용되는 표준 라이브러리 함수

- 난수(random number)는 규칙성이 없이 임의로 생성되는 수이다.

- 난수는 암호학이나 시뮬레이션, 게임 등에서 필수적이다

- rand() 함수는 기본적으로 동일한 시퀀스의 숫자를 생성한다

- 서로 다른 무작위 숫자 시퀀스를 생성하려면 srand() 함수를 사용하여 시드를 설정해야 한다.

- 일반적으로 시드(seed)를 설정하는 방법은 현재의 시각을 시드로 사용하는 것이다.

- 현재시각은 실행할 때마다 달라지기 때문이다.

 

 

// 무작위로 생성된 덧셈 문제 퀴즈 프로그램
// %10으로 하여, 1부터 9까지의 난수를 발생시킨다.

#include <stdio.h>
#include <stdlib.h>  #라이브러리 임포트
#include <time.h>

int main(void)
{
    int x, y, answer, i;
    srand(time(NULL));  //현재 시간을 시드로 설정하여 rand() 함수가 매번 다른 무작위 숫자를 생성하도록 함
    
    for (i = 0 ; i < 10 ; i++)
    {
    	x = rand() % 10;
        y = rand() % 10;
        printf("%d + %d = ", x, y);
        scanf("%d", &answer);
        if( x + y == answer)
        	printf("맞았습니다\n");
        else
        	printf("틀렸습니다\n");
    }
    return 0;
}