C语言21点纸牌游戏系统详细设计_第1页
C语言21点纸牌游戏系统详细设计_第2页
C语言21点纸牌游戏系统详细设计_第3页
C语言21点纸牌游戏系统详细设计_第4页
C语言21点纸牌游戏系统详细设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.程序流程图:2.功能测试:系统详细设计2.1 游戏主界面2.6 退出游戏图 2.1 进入游戏后的游戏说明及规则2.2 开始游戏图 2.2 选择下注数目,然后随机发牌,只能见庄家一张牌,可以选择查看庄家隐藏的牌,此为游戏高级模式,开启后可选择想要的牌2.3 作弊模式图 2.3 输入 H 后可开启作弊模式能看到接下来发的牌的点数2.4 作弊模式下赢得游戏图 2.4 在作弊模式下取胜,可以接着要牌,但玩家的牌最多不能超过 5 张,取胜后会统计结果,询问是否继续游戏2.5 非作弊模式图 2.5 此情况为非作弊模式,不能见庄家的牌,只能知道结果,输掉游戏后统计结果,询问是否继续图 2.6 此为退出游

2、戏,输入后自动关闭窗口3.源程序:#include#include#include#includevoid Wait_f(int);void Pause_f();/* 暂停,按任意键继续 */int Random_f(long ,long );/* 返回两个参数之间的随机数 */void Replay_f(char *);/* 询问是否重开一局 */void Hit_f(int *);/* 发一张牌 */void Deal_f(int *,int *,int *,int *);/* 双方各发两张牌 */void Bet_f(int *,int *);/* 接受下注的数目 */void Prin

3、t_f(int ,int ,int ,int );/* 打印结果 */void Rules f();/* 显示游戏规则 */void Results_f(int ,int ,int ,int *,int *,int *,int *);/* 统计结果(输赢平) */void Hit_f2(int * npTotal,int a);int nnn;int main()int nPlayer=0,nCpu=0,nWin=0,nLose=0,nDraw=0,nPlayerTurns=0, nCpuTurns=0,nMoney=0,nBet;/* nPlayer- 玩家手中全部牌的点数和, nPlaye

4、rTurns- 玩家手中牌的数量 */char chAnswer;char mmm;int a;system(cls);/* 执行系统命令 清屏 */Rules_f();printf( 确认是否开始游戏: );scanf(%c,&chAnswer);if(chAnswer=y)|(chAnswer=Y)nMoney=100;printf(ttt);Pause_f();elsereturn(0);dosystem(cls);if(nMoney5)/* 看是否允许再要牌 */printf( 您的牌不能超过 5 张! n);if(nPlayerTurns6)&(chAnswer=h)printf(n

5、);if(mmm=y)|(mmm=Y)Hit_f2(&nPlayer,a);else Hit_f(&nPlayer);/* 为玩家发一张牌 */计算机要牌的条件 */while(chAnswer=h)|(chAnswer=H);for(;(nCpu16)&(nCpuTurns6);nCpuTurns+)/*printf(n);printf( 向庄家发一张牌: n);Hit_f(&nCpu);/* 为计算机发一张牌 */printf(nn);printf( 庄家为 : %d点 n, nCpu);/* 显示总点数 */printf( 您为: %d点n, nPlayer);printf(n);Res

6、ults_f(nPlayer,nCpu,nBet,&nMoney,&nDraw,&nWin,&nLose);/* 计算最后的结果(统计输Replay_f(&chAnswer);/* 询问是否重开一局 */while(chAnswer=y)|(chAnswer=Y);Print_f(nWin,nLose,nDraw,nMoney);/* 打印最后结果 */printf(n);printf(tttt);return(0);void Rules_f() /* 这个函数显示游戏规则 */printf( 欢迎来到 21 点纸牌游戏 n);printf( 这里有一些简单的规则 :n);printf(1:

7、你的几张牌中只能有一个最大的牌。 n);printf(2: 如果你破产将输掉游戏。 n);n);printf(3: 如果你赢得游戏将获得你下注两倍的钱printf(4: 庄家点数等于或大于 16 时游戏停止。 n);printf(5: 您将获得 100 元初始基金! n);printf( 提示:游戏中“是 ”输入“y ”,“否”输入“n ”。n); printf(PS :请按 Enter 键继续游戏! n);getchar();void Bet_f(int* npBet,int* npMoney) /* 该函数接受玩家下注,并计算赌资的总数 */system(cls);printf( 您有:

8、%d元n,*npMoney);printf( 您将下注多少钱 :);scanf(%d,npBet);if(*npBet=10)nPlayerCard1=10;if (nPlayerCard2=10)npyeard2HlO 八 if (ncpucarvAo) 宀PiCpuCarcH HlO八 if (ncpuca2vA0) 宀ncpucas.2Hlo 八*npF1 ayerHnp-ayeoalH+np-ayec)ard2 八 *PCPUHncpucalH+ncpuca2 八Prinm-塗罢剪汀齊池-%2n=*nPPyemPllmfU%d 一=np_ayeoadDPllmfU%d 一=n Pyeo

9、ard2)-Plinmvl)PIlnff (=m耒-%d=ncpucard=10)nCard=10;* npTotal=* npTotal+nCard;printf( 点数是: :%d点 n, nCard);printf( 总点数是 :%d点 n, * npTotal);void Results_f(int nPlayer,int nCpu,int nBet,int * npMoney,int * npDraw,int* npWin,int * npLose)/* 统计结果(输赢平及输赢平的局数) */if(nCpu=nPlayer)printf( 庄家赢! n);+* npDraw;if(n

10、Player21)printf( 您爆点了! n);+* npLose;elseif(nCpu21)printf( 庄家爆点! n);if(nPlayernPlayer)printf( 您输了! n);+* npLose;void Replay_f(char *chpAns)/* 询问是否重开一局 */printf( 想要再玩一次吗? n); scanf(%c,chpAns);void Print f(int nWins,int nLose,int nDraw,int nMoney)printf( 赢得:%d局n, nWins);printf( 输掉:%d局n, nLose); printf( 平局 :%d局n,nDraw);printf( 剩余资金 :%d元 n,nMoney); void Wait_f(int nMilli)int nStart1,nStar

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论