




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告课程名称: C语言程序设计 实验项目: 21点扑克牌游戏设计 专业班级: 电子信息工程 实验室号: 信息205 实验组号: xx 实验时间: 2010-5-4 批阅时间: 指导教师: 成 绩: 沈阳工业大学实验报告(适用计算机程序设计类)专业班级: 电子信息工程0902 学号: 姓名: 实验名称:21点扑克牌游戏1.要求:该程序是一个21点的扑克牌游戏,玩家一共可以要5张牌,如果牌的点数超过21,则暴了,自动出局;在不超过21点的情况下,玩家与庄家(计算机)比较牌点数的大小,大者为赢。2.程序设计要求:1)程序中一共有13张扑克牌可以随机抽取,大于10的点数为10,现要求大于10的点数全部为半点。2)高级玩家可以查看下一张牌,即按H键,然后要求输入密码,密码正确可以看牌,并决定是否要牌。当然,在游戏规则上不能泄露这个秘密。3)可以编写作弊程序,即按某一个键(自定)去查看计算机的牌面,并根据计算机所得的牌来输入自己想要的牌,当然,在界面上不能显示这点秘密(看过后即清屏)。4)每次要牌后可以设定赔率,即如果开始下的是10元钱的注,如果牌好,你可以要求再下注,当然不能超过你所有的总钱数。3. 实验方案(程序设计说明)4. 实验步骤或程序(经调试后正确的源程序)5程序运行结果6出现的问题及解决方法附件A 沈阳工业大学实验报告(适用计算机程序设计类)专业班级: 电子信息工程0902 学号: 姓名: 实验步骤或程序:(我所做的程序是作弊程序改动已经加粗)#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 Print_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玩家手中全部牌的点数和,nPlayerTurns玩家手中牌的数量*/ char chAnswer; char mmm;int a; system(cls);/*执行系统命令“清屏”*/ Rules_f(); printf(tttWOULD YOU LIKE TO PLAY? ); scanf(%c,&chAnswer); if(chAnswer=y)|(chAnswer=Y) printf(tttI WILL LET YOU START WITH $100n); nMoney=100; printf(ttt); Pause_f(); else return(0); do system(cls);if(nMoney5)/*看是否允许再要牌*/printf(tttYou Cant Have more than 5 cards); if(nPlayerTurns6)&(chAnswer=h)printf(n); 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(tttThe Dealer Takes A Card);Hit_f(&nCpu);/*为计算机发一张牌*/printf(nn);printf(tttThe Dealer Has A Total: %dn, nCpu);/*显示总点数*/printf(tttYou Have A Total Of: %dn, nPlayer);printf(n);Results_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(tt WELCOME TO ISAAC SHAFFERS BLACK JACK GAMEn); printf(ttt HERE ARE SOME SIMPLE RULESn); printf(ttt1:You Can only have a max of 5 cards.n); printf(ttt2:If you bust you automatically lose.n); printf(ttt3:If you win you win double what you bet); printf(ttt4:The Dealer stops at or after 16.n); printf(tttt); getchar();void Bet_f(int* npBet,int* npMoney) /*该函数接受玩家下注,并计算赌资的总数*/system(cls);printf(tttYOU HAVE:$%dn,*npMoney);printf(tttHow Much Do You Wish To Bet:);scanf(%d,npBet);if(*npBet=10)nPlayerCard1=10;if (nPlayerCard2=10)nPlayerCard2=10;if (nCpuCard1=10)nCpuCard1=10;if (nCpuCard2=10)nCpuCard2=10;*npPlayer=nPlayerCard1+nPlayerCard2;*npCpu=nCpuCard1+nCpuCard2;printf(tttYOU HAVE a total of:%dn,*npPlayer);printf(%d, nPlayerCard1);printf(%d,nPlayerCard2);printf(n);printf(tttThe DEALER HAS A %d SHOWING,nCpuCard1);printf(n);printf(*%d,nCpuCard1);nnn=nCpuCard2;void Hit_f(int * npTotal) /* 发一张牌,返回点数之和*/int nCard;nCard=Random_f(13,1);if(nCard=10)nCard=10;* npTotal=* npTotal+nCard;printf(tttThe card is a :%dn, nCard);printf(tttTotal is :%dn, * npTotal);void Results_f(int nPlayer,int nCpu,int nBet,int * npMoney,int * npDraw,int * npWin,int * npLose)/*统计结果(输赢平及输赢平的局数)*/if(nCpu=nPlayer)printf(tttIT WAS A DRAW HOUSE WINSn);+* npDraw;if(nPlayer21)printf(tttYou Bustn);+* npLose;elseif(nCpu21)printf(tttDealer Bustn);if(nPlayernPlayer)printf(tttYOU LOSEn);+* npLose;void Replay_f(char *chpAns) /*询问是否重开一局*/ printf(nttWould You Like To Play This Game Again:); scanf(%c,chpAns);void Print_f(int nWins,int nLose,int nDraw,int nMoney) printf(ttttWINS:%dn, nWins); printf(ttttLOSE:%dn, nLose); printf(ttttDRAWS:%dn,nDraw); printf(ttttMONEY:%dn,nMoney);void Wait_f(int nM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中考北京英语试卷及答案
- 赣县区有关部门下属事业单位2025年第二批公开选调工作人员备考练习题库及答案解析
- 2025年小学数学间距题目及答案
- 北师大版数学四年级上册 第一单元第一课时 数一数 同步测试(含解析)
- 2025河南省直第三人民医院招聘工作人员17人(第二批)考试参考试题及答案解析
- 2025河南郑州金庚中医康复医院年中招聘8人考试参考试题及答案解析
- 2025年探伤工试题及答案
- 2025浙江磐安四中安文初中招聘多科顶岗教师昌文幼儿园招保育员考试参考试题及答案解析
- 【正版授权】 ISO 15592-2:2025 EN Fine-cut tobacco and smoking articles made from it - Methods of sampling,conditioning and analysis - Part 2: Atmosphere for conditioning and testing
- 2025四川绵阳市公共交通集团有限责任公司招聘运营管理专员等岗位3人备考练习题库及答案解析
- 2025年彩票兑奖岗笔试备考秘籍
- 1.2 从立体图形到平面图形第3 课时截一个几何体 北师大版七年级数学上册教案
- 2025版食品加工委托生产合同范本
- 2025年老司机三力测试题及答案
- (2025年标准)货拉拉签协议书
- 学堂在线 中国传统艺术-篆刻、书法、水墨画体验与欣赏 章节测试答案
- 工厂供电理论知识培训课件
- 静脉输血并发症护理查房
- 纪委案件审理课件教材
- CorelDRAW教学讲解课件
- 湘美版美术一年级上册全册课件
评论
0/150
提交评论