srand(3)

#include <stdlib.h>

void srand(unsigned int seed);

srand(3)함수는 rand(3)함수의 값을 초기화하는 함수입니다. srand(3)함수는 최초 1회만 호출합니다. 만약 srand()함수를 호출하지 않거나, srand()를 호출시에 같은 값을 입력하면, rand(3)함수는 같은 값을 순서대로 return합니다. 예를들어, srand(0)하고 rand()함수를 연속으로 호출하면, 1804289383, 846930886, 1681692777, 1714636915, ... 식으로 값을 return했다면, srand(0)을 입력하고 다시 호출하면 순서대로 같은 값이 반복해서 호출됩니다. 이와 같이 srand()함수는 rand()함수의 값에 영향을 주는 설정이며, rand()값이 항상 다른 값을 얻기 위해서는 일반적으로 srand(time(NULL));으로 값을 설정하여 사용합니다.

 

 

 

파라미터

seed
    : rand()의 출력 값에 영향을 주는 seed값

 

RETURN

없음

 

 


예제). 50명의 수학 점수를 radom으로 부여하고 그 결과를 출력하기

#include 
#include 
#include 

int main(int argc, char **argv)
{
    int math[50];
    int idx;
    
    srand(time(NULL));
    
    for(idx = 0; idx < 50; idx++) {
        math[idx] = rand() % 101;
    }
    
    for(idx = 0; idx < 50; idx++) {
    	printf("%d 번째 - %d\n", idx + 1, math[idx]);
    }
    return 0;
}

 


 

see also: rand(3) - 난수(random값)를 얻는 함수

 

 

블로그 이미지

사용자 자연&사람

행복한 개발자 programmer since 1995.

Tag , ,

댓글을 달아 주세요