1.游戏函数的实现
引用头文件如下:
(1)首先打印一个游戏目录
(2)然后制作游戏函数,分别让玩家和电脑出拳,然后进行判断
判断玩家出拳和电脑出拳,运用switch case条件语句,进行判断
然后判断玩家和电脑输赢,创建一个judge函数
(3)最后一起并入主函数,主函数采用循环语句,可以让玩家多次进行游戏
2.运行效果如下
3.附总代码:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
//目录
void menu()
{;
printf("#############################\n");
printf("####### 1.play #######\n");
printf("####### 0.exit #######\n");
printf("#############################\n");
}
//判断玩家出拳函数
void player(input)
{
switch (input)
{
case 0:
printf("玩家出石头\n");
break;
case 1:
printf("玩家出剪刀\n");
break;
case 2:
printf("玩家出布\n");
break;
default:
printf("玩家输入有误,请重新输入:");
scanf("%d", &input);
player(input);
break;
}
}
//判断电脑出拳函数
void computer(i)
{
switch (i)
{
case 0:
printf("电脑出石头\n");
break;
case 1:
printf("电脑出剪刀\n");
break;
case 2:
printf("电脑出布\n");
break;
}
}
//判断输赢函数
void judge(input,i)
{
if (input == 0 && i == 1 || input == 1 && i == 2 || input == 2 && i == 0)
{
printf("玩家胜利\n");
}
else if (i == 0 && input == 1 || i == 1 && input == 2 || i == 2 && input == 0)
{
printf("电脑胜利\n");
}
else
{
printf("游戏平局\n");
}
}
//游戏运行函数
void game()
{
//玩家出拳
int input = 0;
printf("玩家出拳,请输入您要出拳的数字(0-石头,1-剪刀,2-布):");
scanf("%d", &input);
//判断玩家出拳
player(input);
//电脑出拳
int i = rand() % 3;
//判断电脑出拳
computer(i);
judge(input, i);
}
int main()
{
srand((unsigned int)time(NULL));
while (1)
{
int i = 0;
menu();
printf("请选择输入(0 or 1):");
scanf("%d", &i);
if (i == 1)
{
game();
}
else if (i == 0)
{
printf("游戏退出\n");
break;
}
else
{
printf("输入错误,请重新输入\n");
}
}
return 0;
}