您好,欢迎访问三七文档
西安文理学院信息工程学院课程设计报告设计名称:数据结构课程设计设计题目:实现一个N*M的扫雷游戏学生学号:1402130407专业班级:软件13级四班学生姓名:樊秀琳学生成绩:指导教师(职称):谢巧玲(讲师)课题工作时间:2015.6.22至2015.7.31/26说明:1、报告中的任务书、进度表由指导教师在课程设计开始前填写并发给每个学生。2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。3、所有学生必须参加课程设计的答辩环节,凡不参加答辩者,其成绩一律按不及格处理。答辩由指导教师实施。4、报告正文字数一般应不少于3000字,也可由指导教师根据本门综合设计的情况另行规定。5、平时表现成绩低于6分的学生,取消答辩资格,其本项综合设计成绩按不及格处理。信息工程学院课程设计任务书学生姓名樊秀琳学号1402130407专业班级软件工程13级四班设计题目实现一个N*M的扫雷游戏内容概要:(包含要求采用的设计环境或开发环境(软、硬环境),采用的关键技术等),系统/设计所包含的基本功能等)程序在eclipse文献资料:[1]张跃平.JAVA2实用教程(第三版)[M].清华大学出版社,2006[2]张跃平.JAVA课程设计(第二版)[M].清华大学出版社,2009[3]叶核亚.数据结构(Java)(第二版)[M].电子工业大学出版社,2008设计要求:(设计所必须达到的基本功能要求、文档格式要求及其他等)工作期限:设计工作自2015年6月22日至201年7月3日止。指导教师:院长:日期:2015年6月22日信息工程学院课程设计进度安排表学生姓名:樊秀琳学号:1402130407专业:软件工程班级:13级四班起止日期内容备注6月22日~6月23日下任务书;收集、阅读、整理相关参考文献,并进行归纳和概括总结,完成项目/任务背景介绍部分文字内容。6月24日~6月26日系统功能设计和模块设计、系统体系结构构建。6月27日~6月30日各功能模块编码实现,系统各功能模块调试与维护。7月1日~7月2日系统功能集成、系统调试与测试,按照模板要求撰写课程设计/项目设计报告。7月3日课程设计/项目设计分组答辩,提交课程设计/项目设计报告以及相关文档,进行成绩评定。指导教师签名:2014年6月22日成绩评定表学生姓名:樊秀琳学号:1402130407专业:软件工程班级:13级四班类别合计分值各项分值评分标准实际得分合计得分平时表现1010按时参加设计指导,无违反纪律情况。完成情况3020按设计任务书的要求完成了全部任务,能完整演示其设计内容,符合要求。10能对其设计内容进行详细、完整的介绍,并能就指导教师提出的问题进行正确的回答。报告质量3510报告文字通顺,内容翔实,论述充分、完整,立论正确,结构严谨合理;报告字数符合相关要求,工整规范,整齐划一。5课题背景介绍清楚,综述分析充分。5设计方案合理、可行,论证严谨,逻辑性强,具有说服力。5符号统一;图表完备、符合规范要求。5能对整个设计过程进行全面的总结,得出有价值的结论或结果。5参考文献数量在2篇以上,格式符合要求,在正文中正确引用。答辩情况2510在规定时间内能就所设计的内容进行阐述,言简意明,重点突出,论点正确,条理清晰。15在规定时间内能准确、完整、流利地回答教师所提出的问题。总评成绩:分指导教师:(签字)日期:2014年7月3日摘要摘要:扫雷游戏是Windows操作系统自带的一款小游戏,在过去的几年里,Windows操作系统历经数次换代更新,变得越来越庞大、复杂,功能也越来越强大,但是这款小游戏依然保持原来的容貌,可见这款小游戏受到越来越多人的喜爱。扫雷游戏是比较经典的一款小游戏,实现它的方法很多,可以用很多不同算法设计和语言实现,如C,C++,VB,JAVA等。我利用eclipse编写了与它功能相似的扫雷游戏,寓学于乐。程序的功能是随机生成地雷数,通过鼠标操作玩游戏,不接受键盘,按任意键结束程序。单击屏幕上的笑脸可以重新开始游戏。所有地雷标出后胜利,当鼠标左键单击到地雷时提示游戏失败。其功能类似于Windows操作系统自带的扫雷游戏。论文首先介绍了进行该游戏课程设计的目的,然后是任务描述和设计的相关要求,最后是最重要的需求分析和设计方案。重点介绍了在游戏过程中各事件的处理,其中又以鼠标事件和清除未靠近地雷区方块这两方面最为最要,鼠标事件是利用鼠标所发出的信息了解用户的意图,进而做出相对应的动作。清除未靠近地雷区的方块较为复杂。关键词:算法设计;事件;Eclipse目录摘要-------------------------------------------------------------第一章课题背景(或绪论、概述)------------------------------------01.1设计目的----------------------------------------------------01.2基本理论依据和主要工作内容-----------------------------------0第二章设计简介及设计方案论述--------------------------------------12.1功能需求---------------------------------------------------12.2功能模块-----------------------------------------------------1第三章详细设计----------------------------------------------------23.1总体设计----------------------------------------------------23.1.1总体功能图---------------------------------------------23.1主要技术----------------------------------------------------3第四章设计结果及分析----------------------------------------------44.1设计结果截图-------------------------------------------------4参考文献------------------------------------------------------------6源代码--------------------------------------------------------------70/26第一章课题背景(或绪论、概述)1.1设计目的1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。2.培养学生综合运用所学知识独立完成课题的能力。3.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。4.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。5.培养学生从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。6.对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。1.2基本理论依据和主要工作内容扫雷游戏主要用了一个10行10列的二维数组,刚开始利用random随机布雷。每一个程序最主要的是算法。扫雷游戏算法的重点是一开始统计好每个格子周围有多少雷,当鼠标左键点在格子上时做出判断,如果周围8个格子有雷则显示出雷数,如果没有雷则显示空白格(在四个角的格子显示周围3个格子,其它边缘的格子显示周围5个的状态),我们在主函数中用两个for语句来判断周围雷数。我们还加了鼠标处理函数。如果格子上有雷则调用函数actionpeformed(),显示“你踩到地雷了,按确定重来,踩到地雷”,游戏结束。若所有的雷都标出,且所有的格子都处理过,则调用函数isWin(),显示“您挖完了所有的雷,您胜利了!,胜利,游戏结束。游戏结束后,按任意键出去。1/26第二章设计简介及设计方案论述2.1功能需求1.本游戏结构较为简单,可以自行设置设置雷数,以此来控制扫雷的难度系数;2.提示区下方将显示总雷数,并可以通过点击右键来标明疑似有雷的区域的数目;3.单击鼠标左键于未知区域,如果未知区域有雷,游戏提示:“你踩到地雷了,按确定重来”;如果没有雷,当需要检测的单元格本身无地雷的情况下,统计周围的地雷个数,则显示周围雷数,然后判断是否挖完所有的雷;如果周围没雷,则再查看周围八个区域是否有雷直到有雷为止,并显示周围雷的数目;4.单击鼠标右键于未知区域,则显示F,将其标识有雷。在该位置再次单击右键则视为不确定,显示Q,单击第三次,取消设置,Q消失;5.如果该数字方块周围地雷已经完全标识出,双击该数字所在方块,将快速翻开所有周围不是地雷的方块,并显示,直到有雷为止;6.将雷全部扫完后,会出现一个提示框,显示游戏胜利。2.2功能模块(1)游戏界面(2)布雷(3)鼠标事件(4)地雷判断(5)游戏胜利(结束)(6)游戏失败(结束)(7)游戏设置(地雷数量)2/26第三章详细设计3.1总体设计游戏的操作方面主要以鼠标为主,当鼠标左键单击方块时即表示打开方块,当鼠标右键单击方块时即表示标识或疑似地雷,反复单击右键则方块会以“未标识→标识→疑似”三者关系不断循环。游戏者可以通过地雷区内的数字提示了解以数字为中心的其周边八个方格内所含的地雷数,假若打开的方块显示数字“3”,则表示以其为中心的周边方块内藏有3个地雷。当打开的方块不是地雷,且周边八个方块也都没有地雷时,方块会以被打开方块的八个方向将空白方块打开。系统的总体设计是对整个系统的结构化设计,包括系统基本功能的设计、系统流程的设计和各个功能模块的设计等。3.1.1总体功能图扫雷游戏主界面设置地雷书排雷失败成功3/263.1主要技术1.鼠标消息处理函数;actionPerformed(ActionEvente)mouseClicked(MouseEvente)2.分模块实现较复杂的程序设计①设置地雷数②布雷③计算周围雷数④判断是否挖完所有雷3.扫雷游戏算法开始统计好每个格子周围有多少雷,当鼠标左键点在格子上时做出判断,如果周围8个格子有雷则显示出雷数,如果没有雷则显示空白格(在四个角的格子显示周围3个格子,其它边缘的格子显示周围5个的状态),我们在主函数中用两个for语句来判断周围雷数。我们还加了鼠标处理函数。4/26第四章设计结果及分析4.1设计结果截图图4-1图4-25/26总结主要包括:正文(小四号字宋体)(1)对设计工作及所设计的系统特性的概括和总结,所采用的关键技术及算法介绍,运行结果分析评价及效率评价,系统还有待于改进的方面等等;(2)本次课程设计/项目设计的感悟等。6/26参考文献参考文献采用顺序编码制格式著录。主要责任者,三名以内的,全部列出;超过三名时,后面加“等.”字样。参考文献类型及标识:参考文献类型专著论文集报纸文章期刊文章学位论文报告标准专利文献类型标识MCNJDRSP其他未作说明的文献,建议采用单字母“Z”。参考文献编排格式(注意严格使用格式中的符号,特别注意区分“,”与“.”):(1)对于专著、论文集、学位论文、报告,格式如下:[序号]主要责任者.文献题名[X].出版地:出版者,出版年.起止页码.其中X代表文献类型标识。(2)对于期刊文章,格式如下:[序号]主要责任者.文献题名[J].刊名,年,卷(期):起止页码.(3)对于报纸文章,格式如下:[序号]主要责任者.文献题名[N].报纸名,出版日期(版次).(4)对于国际、国家标准,格式如下:[序号]标准编号,标准名称[S].(5)对于专利,格式如下:[序号]专利所有者.专利题名[P].专利国别:专利号,出版日期.(6)对于未定义类型的文献[序号]主要责任者.文献题名[Z].出版地:出版
本文标题:扫雷的课程设计报告
链接地址:https://www.777doc.com/doc-6186711 .html