#include <iostream>
#include <cmath>
#include <string>
#include <cstdlib>
#include <time.h>using namespace std;//布=0,剪刀=1,石头=2;
enum Chioce { paper, sisser, rock };//判断胜负函数(mod3同余判断胜负)
//结算各自得分
void decide_winner(int x, int y)//x是你的出拳状态,y是电脑的
{if (x == y) {cout << "平局!" << endl;}else if ((x - y == 1) || (x - y == -2)) {cout << "你赢了!" << endl;}else {cout << "你输了!" << endl;}
}//玩家 类
class Player
{
public:int PlayerChoice;int score;
public:Player(){PlayerChoice= paper;//构造函数初始化数据随便定义一个score = 0;}
};//定义一个电脑 基类   :包含电脑出拳选择状态,当前得分
class ComputerBase
{
public:int ComputerChioce;int score;
public:ComputerBase(){ComputerChioce = paper;score = 0;}
};//随机出拳电脑,继承了电脑基类
class ComputerRandom :public ComputerBase
{
public://随机出拳函数,基于当下时间的随机出拳static int getChioce(){int a;a = time(NULL) % 3;switch (a){case 0:cout << "电脑出的布" << endl;break;case 1:cout << "电脑出的剪刀" << endl;break;case 2:cout << "电脑出的石头" << endl;break;}return (a);}
};int main()
{int mode;cout << "欢迎来到猜拳游戏" << endl;cout << "请选择对手模式:" << endl;cout << "1.随机出拳" << endl;cout << "2.暂未开放" << endl;cout << "3.暂未开放,直接进入模式1" << endl;Player player1;cout << "你出:(布=0,剪刀=1,石头=2)" << endl;cin >> player1.PlayerChoice;ComputerRandom computer1;computer1.ComputerChioce = ComputerRandom::getChioce();decide_winner(player1.PlayerChoice, computer1.ComputerChioce);ComputerRandom Computer1;system("pause");return 0;
}

剪刀石头布(自留底)01相关推荐

  1. python剪刀石头布_Python Tkinter教程系列01:剪刀石头布游戏

    编写剪刀石头布游戏 让我们使用Python 3和Tkinter开发相同的游戏.我们可以将游戏命名为Rock-Paper-Scissors-Lizard-Spock. 规则和玩法Rock crushes ...

  2. 零起点学算法01——第一个程序Hello World!

    零起点学算法01--第一个程序Hello World! Description 题目很简单 输出"Hello World!"(不含引号),并换行. Input 没有输入 Outpu ...

  3. hdu5296 01字典树

    根据二进制建一棵01字典树,每个节点的答案等于左节点0的个数 * 右节点1的个数 * 2,遍历整棵树就能得到答案. AC代码: #include<cstdio> using namespa ...

  4. 20150411--Dede二次开发-01

    20150411--Dede二次开发-01 目录 一.目前市场流行的电子商城系统 1 二.ecshop的介绍 1 三.安装 2 四.echsop 的目录结构 5 五.分析ecshop里面程序的架构 5 ...

  5. (九)单片机串行口 内部结构的讲解 01

    1. 基本概念 常用于数据通信的传输方式有单工.半双工.全双工和多工方式. 单工方式:数据仅按一个固定方向传送.因而这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集. 半双工方 ...

  6. Python 学习笔记01

    print:直接输出 type,求类型 数据类型:字符串,整型,浮点型,Bool型 note01.py # python learning note 01 print('Hello world!') ...

  7. ACM1881 01背包问题应用

    01背包问题动态规划应用 acm1881毕业bg 将必须离开的时间限制看作背包容量,先将他们由小到大排序,然后在排完序的数组中对每个实例都从它的时间限制开始(背包容量)到它的延长时间进行遍历: 1 # ...

  8. 什么是壳 - 脱壳篇01

    什么是壳 - 脱壳篇01 让编程改变世界 Change the world by program 壳 在自然界中,植物用壳来保护种子,动物用壳来保护身体,我们人类没有壳,但我们有衣服,房子也起到了壳的 ...

  9. 端口01 - 零基础入门学习汇编语言67

    第十四章:端口01 让编程改变世界 Change the world by program 引言 CPU可以直接读写3 个地方的数据 (1)CPU 内部的寄存器: (2)内存单元: (3)端口. 这一 ...

最新文章

  1. Hibernate的条件查询的几种方式
  2. Linux 新增一个用户命令 adduser
  3. 笔记-项目整体管理-变更管理-变更管理的原则
  4. 手写自己的MyBatis框架-MapperProxy
  5. Nodejs框架+uniapp前端微商个人相册多端小程序源码
  6. 支付宝五福活动抢先开始了!原来今年可以提前集
  7. 配置VS2008本地调试.NETFRAMEWORK源代码
  8. 算法图解学习笔记01之二分查找
  9. 我要注意的Java编码规范
  10. 【权限维持】window服务端常见后门技术
  11. 思科面试经验| 2020-21年校园内虚拟招聘实习
  12. 计算机720p进制,历史频道《人类大历史 Big History》第1季全17集 英语中字 720P高清纪录片...
  13. 编程语言是一种逻辑语言(形式语言)
  14. Springboot网站第三方登录——QQ登录
  15. 阿里云服务器建站怎么上传文件?
  16. Grid Control一些术语GC、OMS、OMR、OMA的概念
  17. JAVA中extends与implements详解
  18. Cocos2d-x 游戏中子弹的设计
  19. 【英文美方阅读】之《The falling of the leaves》——《叶落》
  20. Docker Swarm从部署到基本操作

热门文章

  1. 那些在做固态盘SSD的其实在研究这仨东西
  2. java,jsp获取上一个访问页面URL
  3. 我一个普通程序员,光靠GitHub打赏就年入70万,
  4. 红尘阡陌,那抹温暖的烟火
  5. Windows Server 2008密码破解
  6. Word 一件删除所有空格
  7. 求关于oled屏的闪屏问题
  8. 2022基金从业考试如何备考
  9. 相机快门_向我的智能手机添加远程相机快门的最简单方法是什么?
  10. 给WPS文档加密码的多种方法