- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计的报告 黑白棋
数据结构课程设计
18 -
完成日期: 2010年 9 月 20 日
目录
题目
…………………………………………… 4
要求
…………………………………………… 4
黑白棋简述
…………………………………………… 4
设计思路
4.1 程序可行性分析…………………………………… 4
4.2 设计目的…………………………………………… 5
4.3 设计意义…………………………………………… 5
4.4 设计方法…………………………………………… 6
4.5 电脑下棋的算法…………………………………… 6
系统功能模块结构图
…………………………………………… 7
系统函数说明
…………………………………………… 8
7. 图形库文件
…………………………………………… 13
8. 运行结果
………………………………………… 17
9. 总结与体会
…………………………………………… 24
10. 参考文献
…………………………………………… 26
11. 源代码与注释
…………………………………………… 26
题目
黑白棋对弈系统设计与实现
2. 任务要求
任务要求是收集与阅读相关文献资料,确定系统目标与范围,分析系统需求,确定系统功能;设计系统方案,完成系统实现;提交《系统源程序》、《系统目标程序》和《课程设计报告》。
系统应具有实现人人对局、人机对局和两机对局(可选)功能。
黑白棋简述
黑白棋,又叫反棋(Reversi)、奥赛罗棋(Othello),苹果棋,翻转棋。黑白棋起源中世纪的英国,18世纪传入日本,并在日本得到了发展。现在,黑白棋在西方和日本很流行。游戏通过相互翻转对方的棋子,最后以棋盘上谁的棋子多来判断胜负。
它的游戏规则简单,因此上手很容易,但是它的变化又非常复杂。有一种说法是:只需要几分钟学会它,却需要一生的时间去精通它。
“黑白棋规则”:
1)两人对弈,以轮流方式持黑子与白子。
2)开辟新局者持白子,加入者持黑子, 之后以轮流方式将棋子置于棋盘格子中。若无地方可下子,则跳过一回,由对方下子。
3)在提示的格子中,选择一个格子下子, 当下子的位置与离最近的同色旗子中, 若有其他棋子则中间的棋子变为与我方一样颜色。
4)当下满64个棋子,棋子多者为胜。
设计思路
4.1 程序设计可行性分析
游戏不同于基于C语言的其他程序(如学生成绩管理系统、教务工作管理系统、图书管理系统等)由于游戏本身的问地就在于缓解压力,所以基于C语言设计的游戏需要一个良好的游戏界面,给游戏者以轻松和愉快的感觉。TURBO C提供了70多个图形函数,这些函数包括在图形库文件graphics.LIB中,他们被定义在graphics.h中。有如此强大的图形处理能力,去设计一个良好的人机交流界面是可行的。
由于此游戏采用的是“人人对战”和“人机对战”的模式,所以在游戏时,需要俩个游戏者或者电脑轮流下棋,棋手1走棋完毕后,经过判断棋盘变化过程后棋手2走棋,游戏过程需要在两棋手间不断进行转化。在C语言中,提供了包括if……else,switch……case等分支语句,综合运用这些分支语句,可以完成上述转化。
黑白棋游戏双方共需要走棋60手,每次走棋后,都需要根据相同的标准判断棋盘变化,来判断旗子颜色的变化情况。显然需要运用循环语句来简化编程的长度。C语言中提供了while \for等循环语句可以实现上述功能[5].
游戏需要操作和输出显示游戏的结果,游戏的操作要由计算机的外部设备在人的操作下完成。C语言本身并不提供输入和输出语句,输入和输出的操作都是由函数来完成的,在C语言的标准库函数中提供了一些输入和输出的函数,这些函数的指针都是针对系统隐含指定的输入和输出设备的。综合运用这些输入和输出的函数可以实现上述的功能。
综合上述,基于C语言的游戏黑白棋的设计是可行的。
4.2 设计目的
1.掌握和利用C语言进行程设计的能力;
2.进一步理解和运用结构化程序设计的思想和方法;
3.初步掌握开发一个小型实用系统的基本方法;
4.学会调试一个较长程序的基本方法;
5.学会利用流程图或N-S图表示算法;
6.学会如何使用TC的图形函数。
4.3 设计意义
通过编写一个相对完整的《黑白棋游戏》程序,加强对C语言的认识,也是对这一学期数据结构课程中学习到的各种C语言语法结构、编程方法和编程技巧进行综合复习以达到巩固和提高。实现《黑白棋游戏》游戏功能,首先是输出游戏模式,然后是通过按键的方式实现棋子的移动,所以程序主要由三大部分实现,一部分功能是显示棋盘,一部分是实现游戏功能.一部分是
您可能关注的文档
最近下载
- 施工项目技术管理实施细则.doc VIP
- 15J401 钢梯国家标准图集.pdf VIP
- 2.4米的鱼缸设计方案.pptx VIP
- 妊娠期肝内胆汁淤积症临床诊治和管理指南(2024版)解读课件课件.pptx VIP
- 康复中心运营方案.pptx VIP
- 大模型前沿技术及未来应用展望(面壁智能 2024)PPT(53页).pptx VIP
- 2025年高考数学大题突破01 三角函数、三角恒等变换与解三角形(8大题型)(原卷版).docx VIP
- 妊娠期肝内胆汁淤积症临床诊治和管理指南(2024版).pptx VIP
- Q 320583 KSHG 005-2017_食品包装用硅油纸.pdf VIP
- 电力安全工作规程(配电部分.doc VIP
原创力文档


文档评论(0)