




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机科学与技术 专业课程设计题单 班级 098206114 学生 李文 课程名称 面向对象程序设计 课 题 猜数游戏程序设计 设计要求 (1)设计友好的中文交互界面; (2)按H键,可以得到详细的帮助信息:如第2位数字正确,第2,3位数字位置不对等;(3)按K键后,可以查看计算机所给出的4位数,但查看前需要输入密码,密码自定;(4)猜的结果以分值的形式给出,每猜错一次扣100分,若猜对1个数,奖励20分;(5)每次游戏结束后将分值存盘,文件名自定。课 题 发 给 日 期2011-7-4课程设计完成日期 2011-7-8指 导 教 师 王青松评语: 评分: 一:选题背景猜数字是一种开发智力的游戏,在现代社会中越来越流行,现用已学的C语言程序的各种知识练习编写简单的应用的程序来实现游戏的功能。二:设计思想:该游戏的实现主要用到C语言中的库函数来实现图形界面能并运用各种循环结构和分支结构来实现选择功能,依次完成整个游戏的制作。三:主要解决问题的方法及技术关键 1、 主要问题及解决方法 图形界面的绘制问题,主要是运用到C语言库函数自带的绘制图形的函数。数字的选择问题和剩余钱数计算问题,主要是用到循环结构和分支结构的嵌套使用。2、 技术关键库函数的使用循环结构和分支结构的综合使用四、程序流程图开始初始化图形一次选择中是否选够是否选择数字显示结果并计算钱数是否小于10是游戏结束Esc键退出游戏否目录一:个人所从事的开发工作描述 二:开发工作的时间安排星期一星期二星期三星期四 三:本人从事程序开发部分的所有源代码3.1:源代码3.2:程序测试 3.3:运行效果图 四:工作日志星期一星期二星期三星期四 五:开发工作总结 5.1:总结。 5.2:参考资料一览一:个人所从事的开发工作描述我负责的是H功能键的设计:按H键,可以得到详细的帮助信息:如第1位数字正确,第2、3位数字位置不对等。通过循环对比计算机所给的答案,找出第1,2,3,4位数字是否有与答案相符的数字,若有,是哪几位。二:开发工作的时间安排星期一下午:得到设计题目,研究该程序设计的要求,准备去图书馆去查找资料。星期二下午:根据网上得到的资料,开始编辑程序从资料中找到需要的部分。星期三下午:对已编辑的程序进行纠错工作。找出致使程序不能正常运行的错误。星期四下午:完成程序的纠错工作,调试程序工作完成。完成开发文档。三:本人从事程序开发部分的所有源代码(1)源代码#include#include#include#include#includeusing namespace std;int x1,x2,x3,x4;int y1,y2,y3,y4; /定义全局变量来记录玩家猜数的情况void FetchHisGuess(int&,int&,int&,int&); /取出玩家输入的4位数void CompNumber(int&,int&,int&,int&); /生成随机的4位数作为所要猜的数bool End(int,int,int,int); /判断游戏的退出与否bool Help(int,int,int,int,int&,int&,int&,int&,int&,int&, int&,int&); / 提供全面的帮助和提示bool Manage(int,int,int,int,int,int,int,int); /管理者通过输入管理密码来查看所需猜的数void TestX(int,int,int,int,int,int,int,int,int&,int&,int&,int&); /判断玩家猜的数是否数字和位置均对void TestY(int,int,int,int,int,int,int,int, int&,int&,int&,int&); /判断玩家猜的数是否数字猜对但位置猜错bool Begin(int,int,int); /判断游戏是否可以开始void rank(); /将分数排名,并输入Game.dat文件中void ReadMark(); /输出保存得分的前3名int nCount=1000; /初始得分位1000分static int mark1=0,mark2=0,mark3=0; /初始新游戏中的前3名的得分/(2)按H键,可以得到详细的帮助信息:如第1位数字正确,第2、3位数字位置不对等。void CompNumber(int&a, int&b, int&c, int&d) srand(time(0); bool bIS=false; while(bIS=false) /循环生成,可以猜多组数字 a=1+(rand()%9); b=1+(rand()%9); c=1+(rand()%9); d=1+(rand()%9); if(a!=b&a!=c&a!=d&b!=c&b!=d&c!=d) /生成4位都不相同的随机数 bIS=true; /生成成功 elsebIS=false; /生成失败bool End(int a, int b, int c, int d) if(a=9&b=9&c=9&d=9) return true; /结束游戏信息 else return false; /不结束,继续循环bool Help(int a, int b, int c, int d,int &x1, int &x2, int &x3, int &x4, int &y1, int &y2, int &y3, int &y4)if(a=8&b=8&c=8&d=8)/玩家输入8888后给出提示 if(x1) cout您的第1位数字和位置均猜对endl; if(x2) cout您的第2位数字和位置均猜对endl; if(x3) cout您的第3位数字和位置均猜对endl; if(x4) cout您的第4位数字和位置均猜对endl; if(y1) cout您的第1位数字猜对,但位置不对endl; if(y2) cout您的第2位数字猜对,但位置不对endl; if(y3) cout您的第3位数字猜对,但位置不对endl; if(y4) cout您的第4位数字猜对,但位置不对endl; if(!(x1|x2|x3|x4|y1|y2|y3|y4) cout您输入的数字和位置均未猜对endl; return true;else return false; /判断出是哪一位数字猜对或位置猜对,给玩家提示,帮助猜数3.1:测试运行程序,打开Visual C+ 6.0,新建一个名为1.C的文件,输入主程序代码, 保存,然后对源文件进行编译,无错误后对程序进行运行。出现“Press any key to continue,or press 9999 to exit”提示,输入任意键,输入4个不同的一位数,键入回车键,出现*A*B。其中B前的*代表你本次猜对了多少个数字,A前的*代表你本次猜对的数字并且位置正确的个数。10次机会若没有猜中则出现正确答案,重新开始新的猜数字游戏。3.2:运行效果图密码查询功能效果图:说明:当游戏玩家输入4个不同的数字时,系统会告诉玩家结果,玩家可以根据情况选择游戏的菜单,游戏者没猜错一次,要扣相应的分,猜对会加分。分值储存效果图:说明:程序会根据不同的游戏记过记录在文件储存器中,并对数据作对比,然后根据数据大小进行排名。四:工作日志 2011年7月4日星期一:从王老师处得到课程设计的题目,是猜数字游戏程序设计。在机房熟悉设计题目,看懂设计说明,理解设计要求,计划好该怎么实现那些功能。当天拿到课设题目,我和涛兴,亚博开始讨论分工。我负责主函数和“按H键,可以得到详细的帮助信息:如第1位数字正确,第2、3位数字位置不对等。”提示功能的开发。涛兴负责主函数和“按K键后,可以查看计算机所给出的4位数,但查看前需要输入密码,密码自定。” “每次游戏结束后将分值存盘,文件名自定。”,“界面”功能开发。亚博负责主函数和“猜的结果以分值的形式给出,每猜错一次扣100分,若猜对1个数,奖励20分。”功能开发。2011年7月5日星期二:从图书馆和网上查资料,下午编辑程序。从资料中查找需要的部分,花了好几个小时才完成猜数字游戏程序设计的程序设计。2011年7月6日星期三:根据找到的资料继续修改,功能键的设置还没有完成。从资料中的数据转换过来还有点错误,再次修改,直至正常运行程序。2011-7-7星期四:将功能键的设置完成,完成工作。调试程序,基本实现了需要的功能,编辑开发文档。五:开发工作总结猜数字游戏的课程设计对我们来说看似简单,却需要我们能对C语言知识进行实际灵活应用。尤其是循环语句和数组要进行大量的应用。本次设计主要运用了循环、数组、随机数等语句。开始运用了随机数的出现,实现了随机的4位数出现,而且运用了For循环和While循环、Break语句,实现了数字重复出现。对猜数的次数进行了限制,只有10次机会,若在10次机会内没有猜中,则本次猜数结束,重新生成随机数进行新的猜数。首先,猜数字游戏程序设计让我把以前学习到的知识进行了深刻的理解并得到巩固和进一步的提高认识,对现在的知识有了更进一步的理解和认识,其次,我在课程设计中碰到了很多的问题,我通过查阅相关书籍,网络资料
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司车辆存放管理制度
- 加强仓储安全管理制度
- 公司经理考核管理制度
- 公司违规罚款管理制度
- 少先队室安全管理制度
- 工厂寝室安全管理制度
- 培训机构门控管理制度
- 健全知青档案管理制度
- 厨房库房卫生管理制度
- 公司系统安全管理制度
- 第14课 光荣的少先队 课件-2024-2025学年道德与法治一年级下册统编版
- 2025年北京市海淀区高三二模-数学+答案
- 安全生产月活动查找身边安全隐患人人讲安全个个会应急课件
- 湖南炎德·英才大联考长郡中学2025届模拟试卷(一)政治+答案
- 深圳市城市规划标准与准则2024版
- 《低空经济及其产业发展-把握机会、布局未来》课件
- 我们的节日-端午
- 工贸培训课件
- 四川省2024年中考物理试题13套附解析答案
- 第1单元班级卫生大扫除(教案)-三年级上册劳动鲁科版
- 铝合金造型施工方案
评论
0/150
提交评论