반응형
Lotto 번호 무작위 추첨하는 프로그램 구현하기 1
(7개의 번호 rand() 함수로 뽑아내기)
#include<stdio.h>
#include<stdlib.h> // srand(), rand()
#include<time.h> // time()
int main(void){
int lotto[7];
srand(time(NULL)); // seed 값을 변경시킨다.
for(int i = 0; i < 7; ){
lotto[i] = rand() % 45 + 1; // 1 ~ 45까지의 난수를 발생시킨다.
int j; // j for 문 바깥에서 변수 j를 사용하기 위해 바깥에서 변수 선언 해준다.
for(j = 0; j < i; ++j){
if(lotto[i] == lotto[j]) break; // lotto[i](이전에 입력된 값)와 lotto[j](현재 입력한 값)이 같으면 안쪽 for문을 나온다.
}
if(i == j) ++i; // 저장된 값들이 모두 같지 않으면 i와 j의 값은 같게된다.
// 그리고 이때, 다음값을 입력하기 위해 i를 +해준다.
}
for(int i = 0; i < 7; ++i)
printf("%3d ", lotto[i]);
printf("\n");
return 0;
}
반응형
'C' 카테고리의 다른 글
[C언어] swap 1 (포인터) (0) | 2021.07.19 |
---|---|
[C언어] 실습: Lotto 번호 무작위 추첨하는 프로그램 구현하기 2 (1~45까지의 번호를 섞은 후, 차례로 7개의 숫자를 뽑아 Lotto 번호 결정하기) (0) | 2021.07.18 |
[C언어] 실습: Baseball Game 프로그램 구현하기 (0) | 2021.07.15 |
[C언어] rand() (0) | 2021.07.13 |
[C언어] 계승 (Factorial) (0) | 2021.07.06 |