每个骰子有六面,点数分别为1、2、3、4、5、6
游戏者在程序开始时输入一个无符号整数,作为产生随机数的种子
每轮投两次骰子,第一轮如果和数为7或11则为胜,游戏结束;
和数为2、3或12则为负,游戏结束;
和数为其它值则将此值作为自己的点数,继续第二轮、第三轮...
直到某轮的和数等于点数则取胜,若在此前出现和数为7则为负

srand()函数

原型: void srand(unsigned int seed)
参数: seed产生随机数的种子
所需头文件: <cstdlib>
功能:为使rand()产生-序列伪随机整数而设置起
始点。使用1作为seed参数,可以重新初化rand()

代码:

#include "stdafx.h"
#include <cstdlib>
#include<iostream>
using namespace std;

enum GameStatus{WIN,LOSE,PLAYING};//定义枚举类型
int _tmain(int argc, _TCHAR* argv[])
{
    int sum,myPoint;
    GameStatus status;//定义枚举变量
    unsigned seed;
    int rollDice();
    cout<<"please enter an unsigned interger:";
    cin>>seed; //随机数种子
    srand(seed);//讲种子传递给rand()
    sum=rollDice();//第一轮投骰子、计算和数

switch(sum){
    case 7:
    case 11:
        status=WIN;
        
        break;
    case 2:
    case 3:
    case 12:
        status=LOSE;
        
        break;
    default:
        status=PLAYING;
        myPoint=sum;
        cout<<"point is"<<myPoint<<endl;
        break;
    }
    while(status==PLAYING)
    {
        sum=rollDice();
        if(sum==myPoint)
            status=WIN;
        else if(sum==7)
            status=LOSE;
    }
    if (status==WIN)
        cout<<"你赢了"<<endl;
    else if(status==LOSE)
        cout<<"你输了"<<endl;
    system("pause");
    return 0;
}
int rollDice()
{
    int die1=1+rand()%6;
    int die2=1+rand()%6;
    int sum=die1+die2;
    cout<<"player rolled"<<die1<<"+"<<die2<<"="<<sum<<endl;
    return sum;
}

运行结果:

投骰子游戏(C++)相关推荐

  1. php 制作骰子游戏,C/C++实现投骰子游戏

    我们将要模拟一个非常流行的游戏--掷骰子. 骰子的形式多种多样, 最普遍的是使用两个6面骰子.在一些冒险游戏中,会使用5种骰子:4面.6 面.8面.12面和20面.聪明的古希腊人证明了只有5种正多面体 ...

  2. C/C++投骰子游戏

    我们将要模拟一个非常流行的游戏--掷骰子. 骰子的形式多种多样, 最普遍的是使用两个6面骰子.在一些冒险游戏中,会使用5种骰子:4面.6 面.8面.12面和20面.聪明的古希腊人证明了只有5种正多面体 ...

  3. 习题3.3投骰子的随机游戏

    /* 题目:每个骰子有六面,点数分别为1,2,3,4,5,6.游戏者在开始输入一个无符号整数,作为产生随机数的种子. 每次投两次骰子,第一轮如果和数为7或11则为胜,游戏结束:和数为2,3或12则为败 ...

  4. Python投骰子小游戏

    今天我们用Python来实现一个投骰子小游戏,这个小游戏比之前写的要复杂一点点,不过大家不用担心,只要大家掌握了基本的语句就可以写出来了 游戏具体内容如下: #投骰子 #玩两个骰子 : 1-6 #1. ...

  5. C++产生随机数的例题:投骰子的随机游戏

    用例题来理解 功能分块 一.rollDice()函数:负责模拟投骰子,计算和数并输出和数 二.rand()函数:求出并返回一个伪随机数. 伪随机数:你可以写一个循环,每次调用rand函数产生一个随机数 ...

  6. C++骰子游戏课程设计(含源码)

    一.目的与要求 1.1课程设计题目 在碰运气游戏中最常见到的是"投掷双骰子"游戏,这种游戏在影视作品中经常会见到.游戏规则是:游戏者每次投掷两颗骰子,每颗骰子是一个正方体,有6面, ...

  7. 编写程序模拟掷骰子游戏。已知掷骰子游戏的游戏规则为:每个骰子有6面,这些面包含1、2、3、4、5、6个点,掷两枚骰子之后,计算点数之和。

    编写程序模拟掷骰子游戏.已知掷骰子游戏的游戏规则为:每个骰子有6面,这些面包含1.2.3.4.5.6个点,掷两枚骰子之后,计算点数之和.如果第一次掷的点数和为7或11,则游戏者获胜:如果第一次掷的点数 ...

  8. python学习之掷骰子游戏

    """ 通过学习的python知识,写一个简单的python小游戏 游戏名字:掷骰子比大小 游戏规则: 1.玩家可以选择玩掷几个骰子游戏(默认3个) 2.玩家可以设置双方 ...

  9. 一个大型网游需要哪些代码块_你会因为网游的非公平性,而转投单机游戏阵营吗?...

    现在网络游戏越来越多,在大家都投身网游的同时,还是有不少玩家转向单机游戏.网游需要玩家通过连接网络.耗费大量的时间与精力,甚至氪金来养号,导致游戏竞技缺乏一定公平性.而单机游戏更多的是注重剧本.故事内 ...

最新文章

  1. python自学攻略-Python自学攻略
  2. Android自定义控制(五)仿新浪微博的下拉刷新
  3. 【python】pycharm启动 一直index,无法运行
  4. 在OpenEIM中每运行一个程序
  5. Codeforces 264B - Good Sequences
  6. 最新摸头GIF在线生成工具源码+实测可用
  7. 网站敏感词过滤的实现(附敏感词库)
  8. MATLAB基本介绍(1)
  9. 网络收藏夹--用来收藏我经常访问的网站
  10. liteide 如何进行修改默认快捷键
  11. 2.15 随机存取存储器与只读存储器
  12. 皮卡丘为什么不进化_为什么皮卡丘不会变身?原因让人想哭
  13. CollabNet Subversion Edge 版本库访问规则 svn
  14. ADB调试关闭荣耀手机的系统更新(烦人的推送)
  15. 【English】十一、一般疑问句
  16. Ubuntu16.04下载截屏录屏软件
  17. php飞信接口,中国移动飞信发送接口(Fetion API)
  18. “首席用户官”到底应该是CUO(Chief User Officer)还是CCO(Chief Customer Officer)
  19. html制作满天星,怎样使用原生js做出满天星效果
  20. 杨辉三角+判断奇数并求和

热门文章

  1. 《七哥说道》第一章:风雨知秋之进城三人
  2. 浪潮服务器查看硬件信息,zabbix通过ipmi传感器监控浪潮服务器的硬件信息
  3. 商业世界,信用需要“守夜人”
  4. [软件人生]各大学的软件工程硕士
  5. appletv开发_AppleTV的长期生存能力
  6. wps加载项开发和使用
  7. 计算机主机面板上的reset,一但中了IE窗口炸弹马上按下主机面板上的Reset键,重起计算机是对的吗...
  8. 仿QQ聊天程序(java)
  9. Javascript JS 网页分享到QQ空间QQ,java实现qq分享,url带参数的方法
  10. Oracle EBS Concurrent Request:Gather Schema Statistics