21点扑克牌游戏报告

上传人:re****.1 文档编号:487422589 上传时间:2023-01-26 格式:DOC 页数:16 大小:367.50KB
返回 下载 相关 举报
21点扑克牌游戏报告_第1页
第1页 / 共16页
21点扑克牌游戏报告_第2页
第2页 / 共16页
21点扑克牌游戏报告_第3页
第3页 / 共16页
21点扑克牌游戏报告_第4页
第4页 / 共16页
21点扑克牌游戏报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《21点扑克牌游戏报告》由会员分享,可在线阅读,更多相关《21点扑克牌游戏报告(16页珍藏版)》请在金锄头文库上搜索。

1、实验报告课程名称: C语言课程设计 实验项目: 21点扑克牌游戏 专业班级: 电子信息工程1001班 姓 名: 学 号: 实验室号: 实验组号: 4 实验时间: 2012/6/26 批阅时间: 指导教师: 成 绩: 沈阳工业大学实验报告(适用计算机程序设计类)实验名称:21点扑克牌游戏1. 实验目的:(1) 练习编写大程序,实现眼球的功能(2) 熟悉函数的调用(3) 编写函数实现程序功能2.实验内容:(1)学习编写实现想要功能的函数。(2)学习如何在主函数与其它函数中调用函数。(3)学习用输入输出函数设定输出界面。(4)学习选择与循环等在函数中的应用。3. 实验方案(程序设计说明)(1)建立一

2、个主函数,在其中实现对部分功能的函数调用。(2)编写可以满足功能的函数。(3)用输入输出函数来控制输出的界面。4. 实验步骤或程序(经调试后正确的源程序)主要步骤与程序代码等。见附件A5程序运行结果见附录B6出现的问题及解决方法问题1:玩家要牌后程序会自动提示程序有误,然后停止运行解决办法:重新编写程序代码,利用选择、循环等结构来实现玩家要牌与不要牌的处理问题2:程序在没有提示玩家想往下进行游戏的操作解决办法:利用输出函数输出相关选择信息,来提示往下的操作附件A 沈阳工业大学实验报告(适用计算机程序设计类)专业班级: 学号: 姓名: 实验步骤或程序:#include#include#inclu

3、de#include#include#include#includeint Tag_f();/*是否开始游戏*/int Random_f(long ,long );/*返回两个参数之间的随机数*/void Hit_f(int *);/*发一张牌*/int 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

4、,int *,int *,int *,int *);/*统计结果(输赢平)*/void Pause_f();int main()int nPlayer=0,nCpu=0,nWin=0,nLose=0,nDraw=0,nPlayerTurns=0,nCpuTurns=0,nMoney=0,tag=1,nBet,nCpuCard1;/*nPlayer-玩家手中全部拍的点数之和,nPlayerTurns-玩家手中牌的数量*/char chAnswer; char Answer20;system(cls);/*执行系统命令“清屏”*/Rules_f();/*显示游戏规则*/system(cls);pr

5、intf(ttt你想要开始玩吗?(开始:y/Y 结束:n/N) );tag=Tag_f();if(tag=1)printf(nn);printf(ttt你的开始金额为$100n);nMoney=100;printf(ttt);Pause_f();else return 0;dosystem(cls);if(nMoney=0)printf(nnnnnn);printf(tttt你不够钱了!n);printf(tttt游戏结束!n);getchar();return 0;Bet_f(&nBet,&nMoney);/*接受下注的数目*/nCpuCard1=Deal_f(&nPlayer,&nCpu,

6、&nPlayerTurns,&nCpuTurns);/*双方各发两张牌*/printf(ttt你想继续要牌吗?(要牌:y/Y 不要牌:n/N):t);while(1)gets(Answer);if(strlen(Answer)4)/*看是否允许再要牌*/printf(ttt你的牌不能超过5张);break;if(nPlayerTurns21)printf(ttt你的牌爆了n);tag=0;break;printf(ttt你想继续要牌吗?(要牌:y/Y 不要牌:n/N):t);elseif(Answer0=n)|(Answer0=N)break;elseprintf(nn);printf(ttt

7、输入有误,请从新输入:);elseprintf(nn);printf(ttt输入有误,请从新输入:); if(tag=0) printf(ttt你输了n); nLose +; else for(;(nCpu=18)&(nCpuTurns5);nCpuTurns+)/*庄家要牌的条件*/ printf(n);printf(*);printf(ttt为庄家发一张牌n);Hit_f(&nCpu);/*为庄家发一张牌*/printf(nnn);printf(*nn);printf(nn);printf(庄家的底牌为:);printf(【%d】n,nCpuCard1);printf(ttt庄家的总点数:

8、%dn,nCpu);/*显示总点数*/printf(ttt你的的总点数:%dn,nPlayer);printf(n);Results_f(nPlayer,nCpu,nBet,&nMoney,&nDraw,&nWin,&nLose);/*计算最后的结果(统计输赢平的局数)*/printf(nttt是否想要重来一局?(y/Y or n/N) );tag=Tag_f();/*是否再来一局*/while(tag);Print_f(nWin,nLose,nDraw,nMoney);/*打印最后的结果*/printf(nn);printf(tttt按任意键退出);getchar();void Rules_

9、f() /* 这个函数显示游戏规则 */ printf(ttt欢迎来玩21点 扑克牌游戏n); printf(ttt下面是一些游戏规则n);printf(ttt1你手中最多允许有5张牌n);printf(ttt2超过21点玩家就输n);printf(ttt3庄家在16点以后一般不再要牌n);printf(ttt4如果你赢了,你赢得赌注以及与赌注相等的钱n);printf(ttt5如果是平局,你可以拿回你的赌注n);printf(ttt6如果你输了,你就会输掉你的赌注n);printf(tttt);printf(按任意键继续);getchar();void Bet_f(int * npBet,int * npMoney) /* 该函数接受玩家下注,并计算赌资的总数 */ system(cls);printf(ttt你有:$%dn,*npMoney);printf(ttt你想赌多少:);doscanf(%d,npBet);if( * npBet* npMoney)printf(ttt赌注大于拥有金额,请重新下注:);else break;while(1); * npMoney= * npMoney-(* npB

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号