欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C++课程设计报告模板.docx

    • 资源ID:2079222       资源大小:66.17KB        全文页数:13页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++课程设计报告模板.docx

    1、C+课程设计报告模板以下是课程设计报告书装订顺序1 封面2目录3正文4附录用B5纸打印,大约20页左右 C+课程设计报告设计题目: 填写本人的课程设计题目 专业: 应用数学 班级: 学生姓名: 本人姓名 学号: 本人学号指导教师: 杨宇晶、郭天娇 目 录摘 要页码第一章 *第二章 *第三章 *第四章 *总结 附录:1源代码2参考资料摘 要(宋体小四,首行缩进2个字)关键字:要求列出常用的关键字 (宋体加粗小四)第一章 绪 论1.1 宋体四号加粗内容:宋体 小四背景、意义设计的目的、要求第二章 问题定义2.1 需求分析2.2 技术分析2.3 第三章 总体设计与详细设计3.1总体设计 : 1.设计

    2、图 主函数退房结账房间信息录入退出客房信息浏览房间信息查询客人入住登记 按房间号查询按客人姓名查询按空房间查询2.总设计方案要实现以上的功能,共分为7个模块:(1)录入房间信息;(2)客人入住登记;(3)客房信息浏览;(4)客房信息查询;(5)客房信息修改;(6)退房结账;(7)退出。其中:模块(4)客房信息查询又分为三个小的模块,1)按空房间查询;2)按客人姓名查询;3)按房号查询。3.2详细设计(1)录入房间信息:(这部分的功能以及编码介绍)(2)客人入住登记:(3)客房信息浏览:(4)客房信息查询:(5)客房信息修改:(6)退房结账:(7)退出:第四章 调试与测试 第五章 总结与心得 附

    3、录:(源代码)例如:一、需求分析:本次课程设计主要是做一个猜数字游戏,要求随机提供序列类型,并且可以按要求提供该序列的前n项,要求猜测第n+1项。这样的n可以作为游戏的难度,n越小,则难度越大;n越小,难度越小。本猜字游戏的难度分为3个级别: 1、简单 2、中等 3、困难 当玩游戏者打开本游戏时会有一个对话框弹出,要求输入的你的姓名和年龄,还要从简单、中等、困难三个中选者你准备挑战的难度,然后点提交按纽进入了本猜字游戏的主程序框。本游戏会根据你选的难度,告诉你前n个数(难度越小,n越大;难度越的,n越小),然后你就可以在输入框填入你所猜的第n+1个数,在本游戏主界面的右面同时会显示你刚才登陆是

    4、输入的名字和年龄,还有你剩余的猜字和得分,游戏者每猜对一次加10分;猜错不扣分,但是你剩余的猜字次数将会减掉一次。如果你猜对第一关所有数字,恭喜你,你可以顺利进入下一关(本游戏一共 关);如果你在限定的次数内没有猜对所给数字,对不起,本游戏结束,如果你还想玩此游戏,请重新登陆!二、设计思想与过程:关于本猜字游戏的设计,我们的设计思想是建立在对问题总体把握的基础上,按照课程设计的要求设计一个面向对象的程序。本游戏的总体构思是:先设计一个抽象基类;然后在这个基类的基础上,我们又设计一系列继承该基类的派生类;最后我们又根据用户的要求设计了猜字游戏界面(包括登陆界面和主程序界面)。在该猜字游戏程序中我

    5、们利用随机函数来实现对不同派生类的访问,即每次玩该游戏的时候都会随机选择一个数列,通过控制程序提示玩家前n个数的多少,从而产生不同难度的数列让玩家猜,根据玩家猜的情况,我们设计了一个程序用于显示玩家猜对的次数、积分、剩余的次数。具体设计过程如下:1 首先我们对该游戏应该实现什么样的功能做了全面的分析,加上我们日常对其他一些游戏的了解,我们的游戏规则设计如下: A运行本游戏应用程序(即caishu.exe),首先会弹出一个对话框,要求玩家填入姓名、年龄,还要求玩家选择他准备挑战的难易程度(有简单、中等、困难三中选择),这些内容都填好以后,玩家便可点“OK”按纽登陆游戏,如果玩家不想玩本游戏可以点

    6、“Cancel”按纽退出。游戏登陆界面如下: B登陆后,便进入了本游戏的主界面,如果你选择的难易程度是“易”,题目会显示数列的前六个数,让你猜第七个数字;如果选择的是“中”,题目会显示数列前四个数字,让你猜第五个数字;如果选择的是“难”,题目会显示数列前三个数字,让你猜第四个数字。游戏主界面的右面会显示玩家的相关信息,包括姓名、年龄、得分(初始分值为100,答对一题加10分,答错一题减10分)、难度、剩余机会(初始值为3,答对一题机会数不变,答错一题减1)。在下面输入框中输入你所猜测的下一个数,然后点“确定”,如果想退出游戏点“退出”。游戏主界面如下:2该游戏程序的主要设计特点是面向对象的程序

    7、设计,也就是对类的设计。我们得首先设计出一个共享的抽象基类,因为开始时我们还不知道由该基类派生出去的派生类会有哪些共通的操作行为,所以我开始定义的基类只能算是一个抽象的概念,它不提供任何操作行为,只是为所有的派生类的提供一个共通接口,提供给以后需要增加的派生类所使用。3我们开始定义的基类好象只是定义了一个共通接口,其实不然,我们可以把所有派生类的共通操作定义在基类里面,这样就不用在每个派生类中定义,可以省掉很多麻烦,也可以增加程序的透明性。通过对类的继承和多态,可以省去我们很多操作。最重要的是当我们要写一个派生类程序时,我们可以不用去动以前写过的程序,让人感觉有着“一种(is-a-kind-o

    8、f)”的关系。只要在定义的派生类中包含基类程序(NumSquence.cpp)这个文件即可。这样我们就可以随时加入新的程序,而不用去更改先前的程序。4在基类的基础上我又加入了一些派生类,用于产生可供用户猜测的数列,然后我们又写了产生随即数的随即函数(rand(),用于“中”,“难”这两种情况下的前N提示数的随机产生,这样就更增加了用户的猜测难度。还有因为用户输入的数据并不一定都是正确的,用户输入的数据有可能是不合法数据:比如输入数过大,数据为负等,在该输数字的地方输入字符串等,所以我们不能完全相信用户,我们得想办法解决这个问题,可以在用户输入错误的时候,给用户错误信息的提示,让用户再次输入,于

    9、是我们定义了函数(如check_string( char*p)等)来对它们进行检测,并作出相应的处理5玩家在开始玩本游戏时,有可能不输入名字、年龄和选择难易程度而直接点“OK”进入游戏,这很难让人想象会出现什么样的后果。于这种异常情况,我们想出了几个解决的办法,就是当玩家进入游戏主界面时,如果名字、年龄和选择难易程度这些信息为空,我们会强制为用户加入相关信息(名字设为:匿名;年龄设为:保密;难易程度设为:易),即在玩家不输入任何信息的情况下的默认处理。6在编写游戏的主程序时,为了完成对前面相关函数的调用和对类的访问,我们声明一个CNumSquence指针类型的数组,用来对所有派生类访问,使程序

    10、真正做到面向对象。7为了让玩家能够更直观的玩游戏,我们打算让程序在WINGDOWN界面下运行,于是我们就用MFC设计了登陆窗口、游戏主窗口、提示玩家是否继续玩的窗口三个界面,这样就使本游戏更加人性化,让玩家更容易玩本游戏,再加上一些规则说明,简直是太棒了。8到此,我们的游戏程序已经基本完成,最后我们对程序做了一下润色,对游戏界面做了一下美工,呵呵!我们的游戏开发也算完成了,虽然有点累,不过还是满有成就感的!呵呵,不写了,不是因为时间紧迫,马上就有一连串的考试,我们还会把我们的游戏做得更好,好,就这样了。三、程序概貌(实际上就是对类的描述):本游戏的核心类如下 3.1 游戏界面控制类 3.1.1

    11、 CGuss ( Guss.cpp )CGuss主要是控制这个游戏的加载,相当于Console 程序中的main函数。 3.1.2 CGussDlg (GussGlg.cpp)CGussDlg 负责控制与玩家交互游戏的界面。提示各种游戏间的信息。 3.1.3 CUserInfoDlg (UserInfoDlg.cpp) CUserInfoDlg 是输入玩家信息的对话框 3.1.4 IsMoreDlg 是询问玩家是否继续的对话框 3.2 玩家信息类 CUserInfo (UserInfo.cpp)CUserInfo 记录玩家基本信息的类,包括玩家姓名、年龄、得分、难度等信息。3.3数列生成类i.

    12、 CNumSquence (NumSquence.cpp)CNumSquence 是数列生成类的抽象基类,它提供数列生成类的基本操作借口。 3.3.2 一般数列生成类的派生类 这些类包括: CFibonacci (Fibonacci.cpp) CPell (Pell.cpp) CSquare (Square.cpp)CTriangular (Triangular.cpp)CPentagonal (Pentagonal.cpp)CLucas (Lucas.cpp )这些数列都是通过固定的通式生成 3.3.2 随机生成的类Chard (Hard.cpp)Chard类是通过随机参数的生成类,用于游戏

    13、难度大的模式。 3.3.3 通过模板函数来生成的类 CTempSeq (TempSeq.cpp)CTempSeq 是通过一个数列生成函数的为模板参数的模板类。通过传入模板函数我们可以任意生成数列。 3.4 异常处理类 3.4.1CEx (Ex.cpp) CEx是异常的抽象基类,提供异常的一般接口。 3.4.2 异常的派生类 CExInput (ExInput.cpp)(输入异常类) CExOverflow(ExOverflow)(数组溢出异常类)四、本程序的亮点及亮点所带来的优越性:4.1 面向对象的设计方法在游戏数列生成类和异常处理类中,充分运用了面向对象的继承和虚拟多态的技术,大大简化的程

    14、序设计的难度,使得程序简明易懂,易与维护和扩展。 4.2 范型程序的设计在游戏中有一种数列示通过一个模板类来生成的,这样就可以通过此类来任意生成数列,极大地提高了程序的弹性。4.3 异常处理机制在程序中,我们定义了一个异常类的体系,然后通过抽象的异常基类捕获各种异常,记录下错误的操作,使程序更加的健壮。 4.4可视化的界面 本游戏采用MicroSoft的MFC框架,运用多种控件来设计界面,使得游 戏易与操作。五、对面向对象程序设计的体会:通过用面向推想的编程概念作为我们的设计游戏的主导思想,我们体会不少,不过由于时间非常的紧迫,我们也只能说说我们的一些主要体会:在程序中我们设计了一个抽象基类C

    15、NumSquence和由这个基类派生出去的CFibonacci、CPell、CSquare、CTriangular、CPentagonal、CLucas,这使我们体会到了“is-a-kind-of”真正思想,也感觉到对面向对象程序设计确实抽象,这需要我们在编程实践去慢慢体会,慢慢总结。 面向对象的编程概念的最主要的特性是:继承和多态。关于多态,在面向对象的程序设计中它的含义是“相似”,两个对象如果具有一定的相似性但又有些区别的话,那么它们具有多态性;在C+中,我们通过基类的pointers和references,借助虚拟机制对派生类进行动态操作。用关键字virtual可使函数有了晚捆绑的灵活性

    16、(即动态绑定),virtual函数表示允许在相同家族中的类有不同的行为,这也正是多态形成的原因。virtual函数允许它与基类那个函数不同(即允许改写基类定义的函数)。会使我们的程序的修改和增删极为方便。当然基类中函数无实质实现内容的话,也可将virtual函数赋值为0,则变为虚拟函数了,那么基类也就成了抽象基类,不能用来产生任何对象,只提供接口给派生类用,仅作为派生类的子对象来用。关于继承,基类用以描述系统中一些对象的思想核心,派生出其他类型(派生类)用来表达了认识该核心的不同途径。在编程的过程中由于对基类的继承机制,使得一些共通的数据和操作只需写一份代码,而无须重复写多份代码,从而大大方便了编程,减少大量的工作量;还有,如果你以后想增加程序的功能,需要再加一个派生类,呵呵这下基类就派上用场了,直接增加一个对基类继承的派生类,呵呵,你就可以直接给老板打电话说我已经把新功能加进去了,哇真的是很爽,太兴奋了!在使用中,我们发现:其实继承就是一个积累和发展的过程,就像文化的积累和发展一样,整个面向对象的编程过程是在向后兼容。设计中我们采用循序渐近、逐步完善的策略,让继承与多态有充分的体现,而且融入了书中所学到的知识,算得上是理论与实践相结合吧!六、本游戏主要程序如下: 程序源码保存在Guss文件夹中


    注意事项

    本文(C++课程设计报告模板.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开