반응형
문제)
컴퓨터는 rand()으로 가위(1), 바위(2), 보(3)으로 얻고, 사람은 아래와 같은 형태로 입력받아서 비교하여 결과를 아래의 형태로 출력합니다.
입/출력 결과>
가위바위보 게임입니다.
user가 낼 차례입니다.(1:가위 2:바위 3:보 0:종료)2
당신은 바위를 냈습니다.
컴퓨터는 보를 냈습니다.
컴퓨터 승리
user가 낼 차례입니다.(1:가위 2:바위 3:보 0:종료)1
당신은 가위를 냈습니다.
컴퓨터는 가위를 냈습니다.
비겼습니다.
답은 아래에... ↓
스스로 풀어보시고... ↓
아래 답과 비교해보세요. ↓
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
char RPS_GAME[3][10] = {"가위", "바위", "보"};
int main(void)
{
int user;
int com;
srand((unsigned int)time(NULL));
printf("가위바위보 게임입니다.\n");
while(1) {
com = rand() % 3 + 1;
printf("user가 낼 차례입니다.(1:가위 2:바위 3:보 0:종료)");
scanf("%d",&user);
if(user == 0) {
break;
} else if(0 > user || user > 3) {
printf("잘못 입력하였습니다. 다시 해주세요.\n");
continue;
}
printf("당신은 %s를 냈습니다.\n", RPS_GAME[user - 1]);
printf("컴퓨터는 %s를 냈습니다.\n", RPS_GAME[com - 1]);
if(com == user) {
printf("비겼습니다.\n");
}
if(user == 1) {
if(com == 2) {
printf("컴퓨터 승리\n");
} else if(com == 3) {
printf("유저 승리\n");
}
} else if(user == 2) {
if(com == 3) {
printf("컴퓨터 승리\n");
} else if(com == 1) {
printf("유저 승리\n");
}
} else if(user == 3) {
if(com == 1) {
printf("컴퓨터 승리\n");
} else if(com == 2) {
printf("유저 승리\n");
}
}
printf("\n");
}
}
반응형
'C언어 문제 > 함수 활용' 카테고리의 다른 글
[strtok] 문자열에 포함된 단어의 수 출력하기 (0) | 2020.06.12 |
---|---|
[strtok] 띄어쓰기 단위(단어 단위)로 잘라서 단어를 역순으로 출력 (0) | 2020.06.12 |
[rand] 100 개의 데이터를 임의로 생성하여 정렬하시오. (0) | 2019.11.06 |
[strtok] 학점 계산기 (0) | 2019.11.04 |
[rand] 윷놀이 프로그램 (0) | 2019.11.03 |