C언어 \ C++
[C언어] C언어 야구게임 예제 코드
안산드레아스
2022. 1. 16. 16:58
반응형
C언어 연습으로 유명한 야구게임이 있다.
랜덤 함수가 필요한데, 이는 time.h 를 통해 srand 함수를 사용해야 함으로 import한다.
반응형
이에 대한 코드
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
int u1, u2, u3;
int c1, c2, c3;
int strike = 0, ball = 0; // 초기화
srand((unsigned)time(NULL)); // 랜덤 숫자 생성
do{
c1 = rand() % 10;
c2 = rand() % 10;
c3 = rand() % 10;
}while(c1 == c2 || c2 == c3 || c1 == c3);
printf("Computer : %d %d %d\n", c1, c2, c3);
do{
strike = ball = 0;
printf("Input : ");
scanf("%d%d%d", &u1, &u2, &u3); // 3개의 숫자를 입력 받음
// 랜덤의 숫자와 입력한 숫자가 일치하면 스트라이크 증가 아니면 볼 증가
if(c1 == u1) strike++;
else if(c1 == u2) ball++;
else if(c1 == u3) ball++;
if(c2 == u2) strike++;
else if(c2 == u1) ball++;
else if(c2 == u3) ball++;
if(c3 == u3) strike++;
else if(c3 == u1) ball++;
else if(c3 == u2) ball++;
printf("\n%dS %dB\n", strike, ball);
}while(strike != 3);
}
컴퓨터가 랜덤으로 낸 숫자와 내가 쓴 숫자가 일치하면 스트라이크이다. 그 외는 볼이다.
원래는 사용자가 먼저 숫자를 쓰고, 랜덤으로 컴퓨터가 숫자를 생성하는게 맞는데
그것은 위 코드를 변형해서 바꿔보도록 한다.
반응형