➏ 5마리 고양이 중에서 무작위로 한 마리를 뽑습니다. 이를 위해 rand()함수로 뽑은 난수를 5로 나머지 연산합니다. 뽑은 값은 selected라는 정수형 변수를 선언해 저장합니다. 이렇게 하면 selected 변수에 0~4 숫자 중 하나가 저장됩니다. 이 숫자는 고양이 5마리의 번호이자 구조체 배열 cats의 인덱스가 됩니다.
9.5 프로젝트.c
#include <stdio.h>
#include <time.h> ----------------------- ➊ 헤더 파일 추가
#include <stdlib.h> --------------------- ➊ 헤더 파일 추가
typedef struct {
(중략)
} CAT;
CAT cats[5];
int collection[5] = { 0, 0, 0, 0, 0 }; -- ➋ 고양이를 담는 작은 상자, 보유한 고양이 표시(있으면 1, 없으면 0)
void initCats();
int main(void) {
srand(time(NULL)); ------------------ ➊ 난수 초기화
initCats();
while (1) { ------------------------- ➌ 작은 상자가 채워질 때까지 무한 반복
printf("두근두근! 어느 고양이의 집사가 될까요?\nEnter를 눌러 확인하세요!");
---------------------------------- ➍ 안내 문구 출력
getchar(); ----------------------- ➎ Enter 입력받기
int selected = rand() % 5; --------➏ 고양이 뽑기, 0~4 숫자 반환
}
return 0;
}