用简单的生成随机数,来对电脑进行的选择。再用if else和swtich语句实现输出和输赢的判断
test.c:
- #define _CRT_SECURE_NO_WARNINGS
-
- #include "game.h"
-
-
-
- void menu() {
- printf("There can be choose for you,type:\n");
- printf("0 for rock\n");
- printf("1 for paper\n");
- printf("2 for scissors\n");
- }
- int main() {
- menu();
-
- srand((unsigned int)time(NULL));// 设置随机种子
- int computer_chiose = rand() % 3;// 生成0到2之间的随机数
- int input = 0;
- printf("Please enter tour chiose:\n");
- scanf("%d", &input);
- game(input, computer_chiose);
- return 0;
- }
game.h:
- #pragma once
-
- #include
- #include
- #include
-
- enum ch {
- ROCK,
- PAPER,
- SCISSORS
- };
- //石头
- void rock();
- //剪刀
- void scissors();
- //布
- void paper();
-
- //游戏实现
- void game(int user_chiose,int computer_chiose);
game.c:
- #define _CRT_SECURE_NO_WARNINGS
-
- #include "game.h"
-
-
- void rock() {
- printf(" ******#** \n ");
- printf(" ******#******* \n ");
- printf(" ************#******* \n ");
- printf(" ***********#******* \n ");
- printf(" ******#***** \n ");
-
- }
- void scissors() {
- printf(" **********#* ***** \n ");
- printf(" ***************** \n ");
- printf(" ****************#************ \n ");
- printf(" **************#***** \n ");
- printf(" ********#**** \n ");
-
- }
- void paper() {
- printf(" *********** \n ");
- printf(" ****************** \n ");
- printf(" ************************** \n ");
- printf(" ************************ \n ");
- printf(" **************** \n ");
- }
-
-
- static void Jugde(int a, int b) {
- if (a == 0) {
- if (b == 0) {
- printf("Draw\n");
- }
- else if(b==1) {
- printf("You lose\n");
- }
- else {
- printf("You win\n");
- }
- }
- if (a == 1) {
- if (b == 1) {
- printf("Draw\n");
- }
- else if (b == 2) {
- printf("You lose\n");
- }
- else {
- printf("You win\n");
- }
- }
- if (a == 2) {
- if (b == 2) {
- printf("Draw\n");
- }
- else if (b == 0) {
- printf("You lose\n");
- }
- else {
- printf("You win\n");
- }
- }
- }
-
- void game(int user_chiose, int computer_chiose){
- printf("Your choise:\n");
- switch (user_chiose) {
- case ROCK:
- rock();
- break;
- case PAPER:
- paper();
- break;
- case SCISSORS:
- scissors();
- break;
- default:
- printf("input error\n");
- break;
- }
- printf("\nComputer choise:\n\n");
- switch (computer_chiose) {
- case ROCK:
- rock();
- break;
- case PAPER:
- paper();
- break;
- case SCISSORS:
- scissors();
- break;
- }
- Jugde(user_chiose,computer_chiose);
- }