2023年面向对象程序设计课程设计.docx
面向对象程序设计课程设计编程工具:可以用 VC+6.0、C+Builder、V isual Stud i o 2023。推荐 用 Visual S t udio 2 0 2 3。规定:1、使用面向对象方法进行课程设计。规定使用对象/类,继承,多态性等技术。2、程序设计语言使用C+ +。3、程序的界面、逻辑功能和数据的存储进也许的分开4、完毕课程设计报告报告记录设计的过程。课程设计报告的内容应当涉及 以下内容:要完毕的功能;设计的具体描述;设计的源代码;执行的结果等功能。根 据结合自己的实际情况,酌情选择相关的功能,并完毕设计。课程设计报告样例请 参考附件。题目:在控制台程序或图形界面程序中任意一个作为课程设计题目,设计过程中 规定独立完毕,不能再网上COPY代码,题目在附件里控制台程序2 .自定义一个示意性的复数类型complex,其中具有若干个成员函数,使用该类 可以完毕复数的加法以及对复数的输出。请完毕类定义,并编制主函数,说明 complex类对象,对定义的各成员函数进行调用。class comp 1 exo d o u ble re a 1;/ / 复数实部«d o u b le i m a g ;复数虚部pu b li c :complex。;。无参构造函数0com p 1 ex( d ouble r, doub 1 e i); 2 参构造函数空o mp 1 ex a d dCom( c ompl e x c2);/调用者对象与对象c2相加,返 回complex类对象void out Com ();。 输出调用者对象的有关数据(各分量);进一步,在类中添加对复数进行其他基本运算(如,复数减、乘、除、取模等)的 相应成员函数,并通过主函数处的调用来验证各函数的使用对的性。3 .运用虚函数手段,按照3种不同的计算方法来求出Fi bona c ci数列的第n项 (的具体项值)并输出。具体地说,可通过在基类b as e Cla及其派生类f i blCla. f ib 2 Cla 和 fib3Cla 中说明如下的同一个虚函数“virtual dou b le fi b ( i nt n);w , 来实现求Fi bonacci数列第n项值并返回的3种不同求解方法。4 .设计一个类C Stud ent,类中包含一个学生的基本数据如下:编号,姓名,性别,年龄,数学成绩,计算机成绩,外语成绩。并假设编号为整数,旦从1号往后连续编码;姓名为字符串,性别为字符。 如:1 LiPing m 1 8 8 9 9 8 94请采用binary文献形式,并使用随机读写解决方式,对自定义C Student 类的对象数据进行存储与读写解决(即是说,总按具有连续编码的编号num为 “序”来对文献中的各对象数据进行随机读写解决)。并设计该类的成员函数, 并且对输出运算符“<<”进行重载,使该运算符可以完毕将一个学生的信息输 出到屏幕上。规定成员函数完毕以下功能:(1)从键盘输入一个学生的有关信息,并将它们存入到数据文献中(按编 号来拟定写出位置)。(2)按编号对学生信息进行检索并将检索结果显示在屏幕上。(3)按姓名对学生信息进行检索并将检索结果显示在屏幕上。(4)计算某编号学生的总成绩与平均成绩。(5)列出所有总成绩超过n分的性别为s同学的有关信息(n, s由用户从 键盘输入)。思考:可进一步对上述程序进行扩充,如,添加学生基本数据(籍贯,专业, 班级,其他各门成绩,奖惩记录等),并添加所需要的其他相关解决函数(如可通 过征询教学办公室管理人员后确立),进而将其编制成为一个简朴而实用的小型 学籍与成绩管理软件。5 .编写程序实现一个简朴的电话记录簿,规定记录的个人信息涉及:姓名,单位, 家庭电话,移动电话。具体功能如下:1 .创建信息链表并以磁盘文献保存。2 .读取磁盘文献并显示输出所有人的移动电话。3 .按姓名或单位查询家庭电话。4 .通过姓名和单位拟定个人,修改其电话信息并存盘。图形界面程序,实现一个计算器参考Win d ows的计算器应用程序。1 .设计一个通信录参考Ou Ho ok通信录,或自行设计。2 .实现以下绘图程序规定:(1)程序中包含菜单项和工具栏;(2)先选择菜单项或单击工具栏上的命令按钮,然后在窗体空白区域单击鼠 标后,绘制相应菜单项或命令按钮指定的图形、文字。扩充:1)可以选择、移动、删除、拷贝、剪切图元2) 完毕图形文献的保存、打开、打印.用你熟悉的一种可视化编程语言实现以下汉诺塔演示程序。4 .单机版俄罗斯方块游戏规则:在方块从屏幕上方落下来时,玩家可以移动和旋转窗口内落下的 方块,巧妙地安排布置,达成充足运用屏幕空间的目的。每当屏幕的一整行被方 块积木排满时,作为奖赏,整行从屏幕上消失,剩余的积木依次往下降一行。当积 木堆积达成屏幕顶端的时候,游戏结束。扩充:多人联机游戏。