五子棋程序设计说明书.doc

五子棋程序设计说明书.doc

ID:59420303

大小:121.00 KB

页数:19页

时间:2020-05-26

五子棋程序设计说明书.doc_第1页
五子棋程序设计说明书.doc_第2页
五子棋程序设计说明书.doc_第3页
五子棋程序设计说明书.doc_第4页
五子棋程序设计说明书.doc_第5页
资源描述:

《五子棋程序设计说明书.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、中北大学程序设计课程设计说明书学生:学号:10051041学院:信息与通信工程学院专业:光电信息工程题目:五子棋指导教师:职称:2012年01月06日(纪念我已经逝去的大学生活)19院:信息与通信工程学院专业:光电信息工程学生姓名:学号:10051041课程设计题目:五子棋起迄日期:2011年12月24日~2012年1月6日课程设计地点:111420指导教师:系主任:下达任务书日期:2011年12月25日课程设计任务书1.设计目的:1熟悉C语言程序设计的原理与方法;2掌握C语言开发环境下程序的具体设计;3掌握利用C语言分析解决具体问题。2.设计容和要求:19设计容:用C语言设计一个

2、五子棋游戏程序,允许游戏者自由选择棋子颜色,实现人人对战和人机对战,利用时间函数设置实现落子倒计时功能程序应该具有以下基本功能:1.显示欢迎界面。2.玩家棋子可选,棋盘围足够。3.落子时间倒计时。设计要求:1.不同的功能使用不同的函数实现(模块化),对每个函数的功能和调用接口要注释清楚。对程序其它部分也进行必要的注释。3.对系统进行功能模块分析、画出总流程图和各模块流程图。4.用户界面要求使用方便、简洁明了、美观大方、格式统一。5.所有程序需在Win-Tc或MicrosoftVisualC++6.0环境调试通过。3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、

3、实物样品等〕:1)课程设计说明书一份;2)电子文档(说明书、设计程序)一份课程设计任务书4.主要参考文献:19谭浩强《c程序设计》大学5.设计成果形式及要求:1)课程说明书打印,并装订;2)必要的程序流程图和程序附录。6.工作计划及进度:2011年12月24日~2011年12月26日下达设计任务书,学生熟悉设计容;2011年12月27日~2011年12月29日查阅参考资料,确定基本设计方案;2011年12月29日~2012年01月04日C语言进行程序设计;2012年01月05日~2012年01月06日完成设计报告;2012年01月06日答辩;系主任审查意见:签字:年月日19目录1、

4、课程设计的背景及意义……………....062、设计的基本原理………………………063、设计的基本过程………………………084、设计的结果……………………………105、总结和结论…………………………….11191.设计背景及意义我们的五子棋程序是在VisualC++6.0环境下运行的。  VisualC++6.0MicrosoftVisualC++(简称VisualC++、MSVC、VC++或VC)微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。VC++整合了便利的除错工具,特别是整合了微软视窗程式设计(WindowsAPI)、三维动

5、画DirectXAPI,Microsoft.NET框架。目前最新的版本是MicrosoftVisualC++2010。VisualC++6.0集成了MFC6.0,于1998发行。发行至今一直被广泛地用于大大小小的项目开发。五子棋是一种两人对弈的纯策略型棋类游戏,是起源于中国古代的传统黑白棋种之一。我们通过对《C语言》以及对《大学计算机基础》的初步学习后,本学期末进行了课程程序设计,设计课题为“五子棋”。我们小组由6人组成,通过分工与合作并在老师的耐心指导下共同完成了此程序设计。2.设计的基本原理2.1问题描述连珠(五子棋)19是有两个人在一盘棋上进行对抗的竞技运动。在对局开始时,先

6、由用户选择哪方先开局,先开局一方将一枚棋子落在一点上,然后由另一方在对方棋周围的交叉点上落子,如此轮流落子,直到某一方首先在棋盘的直线、横线或斜线上形成连续的五子则该方就算获胜。此时,算法结束。2.2需求分析(1)输出棋盘界面(2)要求玩家选择棋子(3)玩家轮流下棋(4)判断键盘输入哪个键按规则执行操作(5)判断谁先落棋(6)判断赢家(7)输出结果界面2.3流程图开始玩家选择棋子输出棋盘界面O方先输入棋子坐标刷新棋盘界面19转换玩家玩家移动棋子YYYNNN结束判断是否赢棋判断是否重子判断棋子是否出界刷新棋盘界面输出胜利界面3设计的基本过程charb[40][40];19voidsh

7、ow()//输出获胜图像//{inti=0,j=0;//i为横坐标变量,j为纵坐标变量//for(i=0;i<40;i++)//对图像数组赋初值//for(j=0;j<40;j++){b[i][j]=46;}for(i=0;i<40;i++)//对图像数组特定点赋值//for(j=0;j<40;j++){if(i>10&&i<16){if(j>10&&j<16

8、

9、j>25&&j<31)b[i][j]='O';}else{if(i==21){if(j>=6&&j<=35

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。