반응형
main.c
#include<stdio.h>
#include<time.h>
#include"rand.h"
int main(void){
my_srand(time(NULL)); // time(NULL)에 의해 실행마다 다른 수가 전달된다.
for(int i = 1; i <= 10; ++i){
printf("%d\n", my_rand());
}
return 0;
}
rand.h
#ifndef RAND_H
#define RAND_H
void my_srand(int seed);
int my_rand(void);
#endif
rand.c
#include"rand.h"
static int base; // int 전역변수는 여러개의 .c 파일에서 사용할 수 있다.
// static int 전역변수는 파일 내에 있는 변수에만 적용된다.
void my_srand(int seed){
base = seed;
}
int my_rand(void){
base *= 1103515245 + 12345;
return (unsigned int) (base / 65536) % 32768;
}
반응형
'C' 카테고리의 다른 글
[C언어] 실습: Lotto 번호 무작위 추첨하는 프로그램 구현하기 1 (7개의 번호 rand() 함수로 뽑아내기) (0) | 2021.07.17 |
---|---|
[C언어] 실습: Baseball Game 프로그램 구현하기 (0) | 2021.07.15 |
[C언어] 계승 (Factorial) (0) | 2021.07.06 |
[C언어] 배열(Array)과 포인터(Pointer) 2 (0) | 2021.07.05 |
[C언어] 버블 정렬 (Bubble Sort) (0) | 2021.07.01 |