欢迎来到天天文库
浏览记录
ID:18335969
大小:82.00 KB
页数:12页
时间:2018-09-16
《扑克牌游戏程序设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、扑克牌游戏程序设计报告作者:梁颖学号:05405104程序名称:扑克牌游戏程序功能简介:1)创建一副扑克牌,可根据需要选择有大小王或者没有大小王的扑克牌。2)根据需要输入参与扑克牌游戏的人数。3)重新初始化整副扑克牌,清除所有打牌者的扑克牌,并显示。4)洗牌,并显示。5)发牌,并显示。6)去掉一张最上面的扑克牌,并显示7)清除所有打牌者的扑克牌,并显示。8)显示没有发出的扑克牌的情况。9)显示所有打牌者的扑克牌的情况。P.S.黑体字为自行增加的功能。对增加模块设计的分析及注解:由于对原代码很多地方觉得难以理解,且原代码有的地方用的是硬代码,所以新编写的
2、程序只有洗牌的思路是按原代码的思路编写的,但还是改成了栈(Stack)的运行方式。这个程序的编写是充分利用C++的面向对象的特性来写的,封装性、隐蔽性、多态性等等都有很好体现,可以说,这个程序除了没有用继承性,其他都用到了。Class的本身就具有封装性和隐蔽性,模板类就是多态性的——类型参数多态性。voidInitMainMenu(){voidMenu1(intplayernum);voidMenu2(intplayernum);intMainMenuSelect;MainMenuSelect=1;do{cout<3、ut<<"主菜单"<4、t<<"输入打牌人数:";Menu2(GetInt(1,9));break;}}while(MainMenuSelect!=3);}程序运行后先选择是否需要有大小王的扑克牌。接着输入参加扑克牌游戏的人数。之所以想到将程序设计成可以选择参加扑克牌游戏的人数,是因为一开始设计程序时为了简单起见,使每个游戏参与者的扑克牌数都相同,这样就导致选择有大小王的扑克牌时(54张)就是三个人参加游戏,而选择没有大小王的扑克牌时(52张)就是四个人参加游戏。这样的设计是非常牵强的,好像在逃避将程序完善的任务,为了更好的解决这个问题,特将程序改为游戏参与者人数可以人为自由5、设置。人数设定的任意性是通过动态创建指针性数组来实现的。而添加7)、8)、9)功能都只是为了使得程序更加透明化,易于使用者清晰、明了程序的运行过程。以有大小王的扑克牌为例:voidMenu1(intplayernum){Deckdk54(54,playernum);//有大小王,共54张intMenuSelect;MenuSelect=1;cout<6、初始化整副牌,清除所有"<7、:";MenuSelect=GetInt(1,8);cout<8、TopPoker();//去掉一张最上面的牌dk54.ShowDeck();//显示break
3、ut<<"主菜单"<4、t<<"输入打牌人数:";Menu2(GetInt(1,9));break;}}while(MainMenuSelect!=3);}程序运行后先选择是否需要有大小王的扑克牌。接着输入参加扑克牌游戏的人数。之所以想到将程序设计成可以选择参加扑克牌游戏的人数,是因为一开始设计程序时为了简单起见,使每个游戏参与者的扑克牌数都相同,这样就导致选择有大小王的扑克牌时(54张)就是三个人参加游戏,而选择没有大小王的扑克牌时(52张)就是四个人参加游戏。这样的设计是非常牵强的,好像在逃避将程序完善的任务,为了更好的解决这个问题,特将程序改为游戏参与者人数可以人为自由5、设置。人数设定的任意性是通过动态创建指针性数组来实现的。而添加7)、8)、9)功能都只是为了使得程序更加透明化,易于使用者清晰、明了程序的运行过程。以有大小王的扑克牌为例:voidMenu1(intplayernum){Deckdk54(54,playernum);//有大小王,共54张intMenuSelect;MenuSelect=1;cout<6、初始化整副牌,清除所有"<7、:";MenuSelect=GetInt(1,8);cout<8、TopPoker();//去掉一张最上面的牌dk54.ShowDeck();//显示break
4、t<<"输入打牌人数:";Menu2(GetInt(1,9));break;}}while(MainMenuSelect!=3);}程序运行后先选择是否需要有大小王的扑克牌。接着输入参加扑克牌游戏的人数。之所以想到将程序设计成可以选择参加扑克牌游戏的人数,是因为一开始设计程序时为了简单起见,使每个游戏参与者的扑克牌数都相同,这样就导致选择有大小王的扑克牌时(54张)就是三个人参加游戏,而选择没有大小王的扑克牌时(52张)就是四个人参加游戏。这样的设计是非常牵强的,好像在逃避将程序完善的任务,为了更好的解决这个问题,特将程序改为游戏参与者人数可以人为自由
5、设置。人数设定的任意性是通过动态创建指针性数组来实现的。而添加7)、8)、9)功能都只是为了使得程序更加透明化,易于使用者清晰、明了程序的运行过程。以有大小王的扑克牌为例:voidMenu1(intplayernum){Deckdk54(54,playernum);//有大小王,共54张intMenuSelect;MenuSelect=1;cout<6、初始化整副牌,清除所有"<7、:";MenuSelect=GetInt(1,8);cout<8、TopPoker();//去掉一张最上面的牌dk54.ShowDeck();//显示break
6、初始化整副牌,清除所有"<7、:";MenuSelect=GetInt(1,8);cout<8、TopPoker();//去掉一张最上面的牌dk54.ShowDeck();//显示break
7、:";MenuSelect=GetInt(1,8);cout<8、TopPoker();//去掉一张最上面的牌dk54.ShowDeck();//显示break
8、TopPoker();//去掉一张最上面的牌dk54.ShowDeck();//显示break
此文档下载收益归作者所有