面向对象程序设计课程设计大纲级计算机专业实验指导书由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“课程设计实验大纲简”。
《面向对象程序设计课程设计》实验指导书
一、课程设计实验的基本内容和要求
1.选题范围
所选题目必须能够实现一个完整意义上的应用系统,但题目名称与具体功能不限,学生可根据自身的兴趣、特点等进行选题或由指导教师提供指导性选题。
2.选题要求
系统功能应较为多样化,具有一定的实用性或趣味性。同时要求所选题目在实现上必须运用以下知识点:菜单、工具栏、多重窗体、文件操作(可选)、图形操作(可选)、多媒体技术(可选)、数据库操作(可选)等。题目规模、难度适当。
3.参考选题
(1)设计一个五子棋游戏。
游戏说明:棋盘分为阴线和阳线,阳线为棋盘上的可见的横纵直线,阴线为棋盘上无实线相连的隐型斜线。在棋阳线和阴线的任意一条线上形成的有5个或5个以上的同色棋子不间隔地紧紧相连者为胜方。
基本要求:
在开始编写程序以前,要完成对系统的分析,给出系统类和对象模型。 用C++的OO技术完成系统程序的设计,给出类成员的详细描述。
程序中至少要定义两个类(例如:坐标position类,棋子che类等),类中要有多个属性和方法。
完成的程序界面要美观,能够完成五子棋的基本游戏功能(两人对战)。创新要求:在基本要求达到后,进行创新设计,完善与增加游戏的功能,例如悔棋功能。
(2)设计一个2维图形绘制程序。
说明:从点类开始构建几种图源(如直线、折线、圆、三角形、矩形),并能初步实现简单图形的组合,如构建一个五角星。
基本要求:
用C++类的思想来完成程序的设计。
在设计的过程中,建立清晰的类层次;
创新要求:在基本要求达到后,进行创新设计,如实现多种图形的组合。
(3)设计一个windows附件中所示的计算器。
基本要求:
求利用面向对象的方法以及VC++的编程思想来完成系统的设计;
要求在设计的过程中,对windows环境下的编程有一个基本的认识。
创新要求:在基本要求达到后,可进行创新设计,如增加计算器的函数功能。
(4)公司人事管理系统
基本要求:
利用面向对象的编程思想以及C++的编程方法完成系统的设计;
完成设计的具体内容:
某小公司,主要有四类人员:经理、兼职技术人员、销售经理和兼职推销员。需要存储这些人员的姓名、编号、级别、当月薪水,计算月薪总额并显示全部信息。实现:(a)人员编号在生成人员信息时同时生成,每输入一个人员信息编号顺序加1。(b)程序对所有人员有提升级别的功能
(c)月薪的计算方法是:经理拿固定月薪,兼职技术人员按工作小时数领取月薪,兼职推销
员的报酬按该推销员当月销售额提成(d)销售经理既拿固定月薪也领取销售提成。
(e)能按姓名或者编号寻找、删除、更新、显示各类人员的信息
(5)模拟猜扑克牌大小游戏
基本要求:
利用面向对象的编程思想以及C++的编程方法完成系统的设计;
该游戏的玩法和规则如下:玩法
②洗牌:每盘游戏开始之前,使扑克牌的排列顺序充分随机。
② 发牌:每局开始时,从未使用的扑克牌集合中顺序发给玩家5张扑克牌(明牌)。③ 猜点:从未使用的扑克牌集合中按顺序取出一张扑克牌(即庄家的暗牌),要求玩家将手中的第一张扑克牌和这张庄家的暗牌进行比较,确定哪张牌大?
④ 积分:玩家确定回答后,翻开被猜的扑克牌(暗牌变成明牌),同时根据玩家回答的正确与否显示相应的提示,并为玩家的游戏成绩积分。然后将这两张已经比较过的牌回收到已经使用过的扑克牌集合中,玩家手中的下一张扑克牌成为新的一张扑克牌。
⑤ 对玩家手中剩余的扑克牌顺序重复第③和④步操作,直至玩家手中不再有剩余的扑克牌时,一局游戏结束。
⑥ 如果未使用的扑克牌集合中的扑克牌数目多余10张,则从第②步自动开始进行本盘游戏的下一局。
⑦ 询问玩家是否继续进行下一盘游戏,如果继续,则从第①步开始进行新的一盘游戏。规则
① 积分规则:
• 猜中1次,积1分;猜错1次,不积分。
• 1局中连续猜中3次,除正常积分外奖励1分;连续猜错3次,罚1分。
• 1局全部猜中,除正常积分外奖励3分;1局全部猜错,罚3分。
• 玩家的最低积分为0,即不出现负分。
② 牌面大小比较规则:每张扑克牌的牌面由花色(梅花Club、方块Diamond、红心Heart和黑桃Spade)和牌点(A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K)组成。确定两张扑克牌牌面大小的规则有两条:
• 如果两张牌面的牌点不同,则牌面大小仅与牌点有关,而与牌面的花色无关。牌点的大小顺序为:2
序为:Club
(6)实现vector类和string类
基本要求:
vector和string均为c++标准库中的重要类,提供多个接口,请实现这些接口,其中vector请实现为模板类,两个类各自包含的接口如附件“string类vector类接口.doc” 4.课程设计报告要求
课程设计报告应包含以下八个内容。
1. 题目
课程设计题目。
2. 功能描述
对系统要实现的功能进行简明扼要的描述。
3. 概要设计
根据功能描述,建立系统的体系结构,即将整个系统分解成若干子功能模块,并用框图表示各功能模块之间的衔接关系,并简要说明各模块的功能。
4. 详细设计
详细说明各功能模块的实现过程,所用到的算法、技巧等。
5. 效果及存在问题
说明系统的运行效果(附上运行界面图片)、存在哪些不足以及预期的解决办法。
6. 心得体会
谈谈自己在课程设计过程中的心得体会。
7. 附录
附上各功能模块的主要代码。
8. 参考文献
列出各种参考文献,包括参考书目,论文和网址等。
二、课程设计的考核
根据系统设计和报告的质量评定成绩,系统设计占60%,报告占40%。优秀系统设计的标准如下:系统设计合理,有一定的实用性或趣味性,逻辑性强,界面友好;优秀报告的标准如下:层次清晰,文字流畅,重点突出。
四、其他
参考资料:
1.黄维通 等编著,《Visual c++ 面向对象与可视化程序设计》,清华大学出版社,2003.12
2.朱晴婷 等编著,《Visual c++ 程序设计—基础与实例分析》,清华大学出版社,2004.3
3.汪成为 等编著,《面向对象分析、设计与应用》,国防工业出版社
4.《面向对象程序设计》 刘振安主编 经济科学出版社
5.《Visual C++ 6.0实例教程》 门槛创作室 电子工业出版社
6.《Visual C++简明教程》 邓力编著 海洋出版社
7.《Visual C++ 6.0编程实例·技巧》 李国徽等编著 华中理工大学出版社
8.《深入浅出MFC》 侯俊杰著 电子版
9.http://.cn ── E海航标
10.http:// ── 程序家园
11.http://msdn.microsoft.com ── MSDN在线帮助
说明:
1. 根据各自的情况选择题目,单人完成。
2. 坚决禁止抄袭和从网上下载源代码,如有发现,一律不及格
3. 最后1~2周进行程序验收,提交时请将整个项目打包发给我,可在我机器上直接运行和查看代码。每个同学都需要向我汇报设计思路和实现方式,请提前做好准备,