c语言纸牌游戏变色龙课程设计.docx
- 文档编号:12328050
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:11
- 大小:157.10KB
c语言纸牌游戏变色龙课程设计.docx
《c语言纸牌游戏变色龙课程设计.docx》由会员分享,可在线阅读,更多相关《c语言纸牌游戏变色龙课程设计.docx(11页珍藏版)》请在冰豆网上搜索。
c语言纸牌游戏变色龙课程设计
学生课程设计报告
课程设计题目:
纸牌游戏变色龙
专业名称:
软件工程
1、课程设计内容
“变色龙游戏”是一款纸牌游戏,本次课程设计的主要内容,
就是实现游戏的规则,完成人人对战和人机对战。
二、技术路线
三、设计与实现
1.牌:
牌的定义,每张牌都有花色和数字两个属性。
实现:
定义一个结构体作为牌的数据类型,整形代表大小,字符型代表花色。
2.洗牌:
完成每次游戏所有牌要随机排序。
实现:
用一个结构体数组代表一副牌,首先用初始化结构体,然后利用随机数从初始化好的牌中随机
抽取其中的牌,然后将牌存放在栈中,完成发牌前的牌的随机排序。
3.发牌:
按照牌的顺序依次发给玩家。
实现:
游戏前的牌存放在栈中,每次发牌就利用栈的先进后出的性质,完成发牌过程。
4.玩家出牌:
每次玩家出的牌存在一个“桌面”上,下一次的出牌与当前桌面牌有关。
实现:
用结构体定义一个与牌具有相同性质的“桌面牌”,将每次的出牌用这个桌面牌装起来。
5.成绩统计:
每次的弃牌都是对方的分数,所以需要将每次的弃牌存下来,最后得出胜利者。
实现:
每次弃牌时,将弃牌用一个变量累加起来,在游戏结束后进行分数的比较就行。
6.AI的设计:
完成电脑与玩家的对战。
实现:
与玩家出牌具有相同的规则,当符合出牌条件时就出牌,在出牌时进行一些比较实现比较简单的人机对战。
四、测试结果
1.牌是否实现了随机排布:
测试图—1测试图—2测试图—3
2.玩家手牌的删除与替换:
测试图—4测试图—5
测试图—4:
A选手当前的手牌如图所示,并且A选手的出牌为2B。
:
测试图—5:
啊选手出牌后2B删除,重新接到新牌1A。
3.出牌游戏规则的实现:
(1)出牌不为当前手牌
测试图—6
(2)出牌不符合规则
测试图—7
(3)出11时可以变色以及变色结果
测试图—8测试图—9
测试图—8:
当前桌面牌为9B,B选手出11可以改变当前花色,B选手将花色变为C。
测试图—9:
桌面牌被B选手变为9C。
4.AI的测试:
测试图—10测试图—11
测试图—12
5.成绩的测试:
测试图—13
五、感想和体会
这次课程设计,经历了很多也让我们学会了很多。
从这次课程设计开始,我们也在一步一步的成长的,回想刚
开始做这个设计时,我们还都是很迷茫的,不知道从何处开始,
经过了的一步一步的琢磨,在摸索中我们终于有了方向,本来迷茫不知所措的我们也有了些许的经验,我们在一起讨论,商量,
最终程序的构架有了雏形,在之后的时间里,我们分模块定接口,
在完成了一个又一个的模块后,又进行了连接工作,第一次连接成功后我们是那样的惊喜与兴奋。
但现在在看当时的程序雏形时,觉得我们当时做的是那样的粗糙,不仅觉得有些可笑。
经历了一次又一次的修改、测试,最终我们的程序才真正有了样子,回忆当时我们为了写出程序代码而抓耳挠腮的情景,回想当时我们为了程序而一起对战5个小时的场景,到现在还感觉这一切都历历在目,但再看看现在我们的成果,这让我们觉得我们的付出是很值得的。
经过了这次的程序设计,我们不仅在编程能力上有所提高,而且对于团队合作的重要性有了进一步的理解,总之,我们是受益良多啊。
经过了喜悦我们对于自己的不足也有了反思,我们认识到了自己的知识确实还是很有限的,需要学习的东西还有很多。
比如我们程序中的一些小bug确实还没有很好的解决,但是我们坚信,未来我们一定能越做越好。
一路走来有迷茫、努力、无奈、奋斗、喜悦、失落、兴奋更有的是我们团结不屈的意志。
。
。
。
。
。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 纸牌 游戏 变色龙 课程设计