- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
.
..
此程序为21点扑克牌游戏,玩家一共可以要五张牌,但如果牌的点数超过21,则自动出局;在不超过21点的情况下,玩家与庄家比牌的点数大小,大者为赢,相同则为平局。? 程序说明:? 1)???将所有的函数与相应的数据封装到类中,并改写主程序。使程序简化。? 2)???程序中一共有13张扑克牌可以随时抽取,大于10的点数为0.5。? 3)???超级玩家永远不会输掉,即超级玩家可以查看下一张牌,若大于21点,则可以拒绝,当然游戏规则上不能泄露这点秘密。? 4)???超级玩家可以查看下一张牌,即输入指定的字符串或字符,然后按要求输入正确密码后才能看自己的和计算机的牌,并指定下一级牌的点数。?? 5)???每次要牌后可以设定赔率,即如果开始下的是10元钱的注,如果牌好,你可以要求继续下注,当然不能超过你所有的总钱数。? 6)???将界面的提示说明改成中文界面,界面的解释详细友好,可以吸引更多的玩家。? 类的封装? 设计一个类,将出牌,下注等的操作包含进去,玩家和计算机。均为这个类的对象。这样,在玩牌及判断输赢时,函数只需要用这两个对象的引用做参数即可,大大简化了函数。? 具体的参考的数据结构如下;? class?CCard { private: ???int?naPip[5];??//一共五张牌 ???int?nNumber;???//实际发了多少牌 ???int?nDollar;???//有多少钱 ???int?nGamble;???//赌注 ???int?nWin;??????//赢局数 ???int?nLost;?????//输局数 ???int?nDraw;?????//平局数 public: ???CCard();?????//构造函数,初始化 ???void?FirstPlayTwo();??//?最初两张牌 ???int?GetNumber();?????//返回牌的张数 ???double?GetPip();?????//返回点数 ???void?DidplayPip();????//依次显示牌面的点数 ???void?DidplayPip(int);????//除了第一张牌,依次全部显示牌面点数(针对计算机牌的显示) ???void?TurnPlay();?????//出一张牌 ???void?Win();?????//赢了计算赌注 ???void?Lose();????//输了 ???void?Draw();????//平局 ???int?SetGamblec(int);???//设置赌注,赌本不够返回-1 ???int?GetMoney();???//返回钱数 ???void?DisplayInfo();????//显示必要的信息 ???char?*?GetCurrentCard();????//返回当前牌点 ???void?DeleteCard(void);???//删除当前牌点,作弊用 ????void?ModifyCard(double);??//修改当前牌,作弊用 ???int?Addgamble(int);????//加赌注 }; 主程序? #includeiostream.h? #includestdlib.h? //fuctions? void?replay(char?ans);?????//询问玩家是否再玩一局? void?hit(int?total);???????//要一张牌? void?deal(int?player,int?cpu,int?playerturns,int?cputurns);?//为计算机和玩家各发两张牌? void?BET(int?bet,int?money);??//下注? void?print(int?wins,int?lose,int?draw,int?money);?//输出最后结果? void?rules();?//输出游戏规则? void?results(int?player,int?cpu,int?bet,int?money,int?draw,int?win,int?lose);?//判断一局的结果?? /*diyige*/? //wait.h?begin?? #include?time.h? #include?stdio.h? void?wait(int?milli)??//暂停,?milli?毫秒? {? clock_t?start;? start=clock();? while(?(?clock()-start?)??milli?);? }? //wait.h?end? #includeiostream.h?
文档评论(0)