1、 C+C+课程设计报告课程设计报告 ( 2012 - 2013 年度第年度第 二二 学期学期) 猜数游戏猜数游戏 专业专业 计算机科学与技术计算机科学与技术 学生姓名学生姓名 班级班级 学号学号 指导教师指导教师 完成日期完成日期 2013 年年 7 月月 7 日日 猜数游戏 目目 录录 目 录 . 2 1 概 述 . 1 1.1 课程设计目的 1 1.2 课程设计内容 1 2 系统总体设计 1 2.1 系统目标 1 2.2 主体功能 2 2.3 系统流程 3 2.4 开发环境 5 3 系统详细设计 5 3.1 系统主界面设计 5 3.2 提示键 H、K 的模块设计 . 6 3.3 统计分数模
2、块设计 8 4 测试 9 4.1 测试方案 9 4.2 测试结果 . 10 5 小结 . 11 参考文献 . 13 附 录 14 附录 1 源程序清单 . 14 C+课程设计报告(2013) 1 猜数游戏猜数游戏的设计的设计与实现与实现 1 概 述 1.1 课程设计目的 a)巩固并加深学生对 C+语言程序设计知识的理解; b)培养学生面向对象的程序设计思想,使学生认识面向过程和面向对象两种设 计方法的区别; c)进一步掌握和应用 VC+ 6.0 集成开发环境; d)提高运用 C+语言解决实际问题的能力; e)初步掌握开发小型实用软件的基本方法,能独立设计、实现具有实际功能的 小系统; f)掌握
3、书写程序设计开发文档的能力(书写课程设计实验报告) 1.2 课程设计内容 课程名称:课程名称:猜数游戏 说明:说明:用户从键盘输入 4 位不重复的数,来匹配计算机给出的 4 位随机数,若 数字和位置均等同,表示用户赢了。每猜一次,计算机均给出提示信息(x,y) ,x 表示数字、位置都匹配的个数,y 表示数字匹配但位置不匹配的个数。 要求:要求: a)设计友好的中文用户交互界面。 b)按 H 键,可得到更详细的帮助信息。 c)按 K 键后,可以查看计算机所给的 4 位数,但查看前需要输入密码,密码 自定。 d)猜的结果以分值的形式给出,每猜错 1 次扣 100 分,若猜对 1 个数,奖励 20
4、分。 e)每次游戏结束后将分值存盘,文件名自定。 2 系统总体设计 2.1 系统目标 该题目是一个通过自己的推断猜数字小游戏。 编写该程序要完成实现系统自定 义四位不同数字、输入四位不同数字、判断输入的四位不同数字的对错情况的功能 以及玩游戏时的提示功能、管理功能和与退出功能。 这次课设是要求用 C+编写程序,实现数字之间的相互比较,让玩家找出电脑 猜数游戏 2 写的四位数字,而玩家在找出四位数字中,电脑需要给出玩家一些提示信息,用以 帮助玩家找出答案。对于猜位数不等的四位数,电脑需要在程序刚运行时,确定一 个随机的四位数,且各个位数不相等。而在玩家输入数字时,也需要检验玩家输入 的数字是否满
5、足条件,即一个各个位数不重复的四位数。只有玩家输入正确的数字 后,电脑才能进行比较数字的运算,如果玩家输入的数字和电脑的不相等,输出提 示信息, 并应从新读取玩家的数字进行判断, 直到玩家放弃猜数字或数字猜对为止。 当玩家在玩游戏时每输入一次四位不同数字电脑都会给出位置数字对错的的 信息,并对此算出所得分数(每猜错 1 次扣 100 分,若猜对 1 个数,奖励 20 分。 ) 。 但玩家经过多次猜测还没猜出答案可以使用提示的功能即比较详细的叙述玩家 所猜的数字的数字和位置的对错情况。当玩家想知道电脑给出的数字时可以使用管 理功能输入正确的密码可以知道电脑所给的正确答案。当玩家不想玩此游戏可是使
6、 用退出键并且在退出时电脑会给玩家正确的答案。 2.2 主体功能 该游戏的主体功能主要有以下几个重要的模块:电脑实现自定义模块、电脑对 玩家所猜数字进行处理的模块、电脑处理玩家游戏排名模块以及电脑处理玩家退出 游戏的模块。 其中电脑自定义模块在玩家开始玩游戏时电脑事先确定好四位不同数字作为 正确数字供玩家猜测;对玩家数字所猜测的数字处理模块主要就是把玩家所猜测的 数字与正确答案做个比较然后反馈给玩家;玩家排名模块就是把各个玩家玩的游戏 统计所得分数并且做出比较排列出前三名;退出模块主要是玩家想放弃游戏时做游 戏作出处理并与此同时告诉玩家答案。 该游戏的各个模块功能如下图所示: C+课程设计报告(2013) 3 图 2-1 系统功能模块图 2.3 系统流程 如下图所示我画的总体流程图想要展现的是,开始玩家进入游戏电脑自定义一 组四位不同数字供玩家猜测,接着开始游戏玩家输入四位不同数字电脑会对这组数 字与正确答案做出比较并告知玩家,接着玩家可有两种选择一是是否继续猜数,二 是是否需要提示。其中如果需要提示通过使用快捷键电脑会给玩家详