《C++面向对象程序设计》课程设计任务书
2017/2018学年第1学期 班级:2017级软件工程、网络工程
一、设计目的
《面向对象程序设计》是一门实践性较强的软件基础课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。本课程设计的目的就是要达到理论与实际应用相结合,使同学们能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,能够运用面向对象的原理和方法解决简单的实际问题,逐步培养学生良好的程序设计能力。
二、设计要求
通过这次设计,要求在逻辑特性和结构的设计及其实现等方面中加深对课程基本内容的理解。在程序结构与功能上,充分运用面向对象的思想和方法,包括信息封装、继承、多态以及文件的操作。在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。
三、设计内容
(任意选1个,1难度系统高,2-4难度系数较高,其余一般。程序中必须有类的实现及使用,否则不合格。可以2个人同选一个题目,验收时必须熟练应答)。
(一) 快乐七巧板(3人)
少儿在玩七巧板积木时,不知道如何拼图,对照图纸很麻烦。该软件要求利用图形界面为少儿设计一款七巧板拼图软件,包含基本的7个元素的显示,完成不少于5种图案的拼图展示,并且能够保存和增加新的拼图。
要求用类的继承和多态来实现。
(一)新生基本信息统计软件
有新生来报到,要逐个录入其信息,如:学生姓名,性别,专业,出生日期,家庭地址,英语入学成绩。要求设计链表类来实现,并统计学生人数。文本界面为:
1. 新增学生信息 2. 删除学生信息
3. 导入学生信息(已经保存于的文件信息) 4. 学生信息搜索(按姓名)
5. 学生信息统计(按专业或性别或年龄---年龄要自动计算) 6. 按英语成绩排序 7. 学生信息保存 8. 退出
******请选择:1
(二)某公司雇员工资支付软件
一般工人(Worker)按每月工作的天数计算工资;销售人员(Salesman)在基本工资基础上每月还有销售提成;经理(Manager) 每月按固定工资支付,临时工(Floater )按小时支付。要求设计抽象类(Employee)描述所有雇员的共同特性(如姓名,性别,出生日期,员工类别),含有计算工资的纯虚函数computeSalay(),所有员工用该方法计薪。要求用多态实现。
经理工资计算:月工资()
销售人员工资计算:基本工资+每件产品提成额*销售的产品数量 一般工人工资计算:每天工资额*工作天数 临时工工资计算:每小时工资额*总工作小时数
文本界面为: 1.新增员工信息 2.删除员工信息
3.员工信息搜索(按姓名)
5.员工信息统计(按姓名或工资或类别) 6.员工信息分类存储
7.员工信息导入 8.按工资排序 9.退出
******请选择:1
(三)某旅馆住宿管理软件
基本功能为旅客入住登记管理,结帐离馆管理,其余功能可以根据实际情况添加
(四)学生成绩管理软件
有N名学生,每名学生含有如下信息:学号、姓名、某四门课的成绩,并计算其总分,用结构体数组表示。然后实现以下功能:
(1)将这些数据存放至文件stuf.dat中;
(2)将文件中的数据读出至结构体数组中,并显示之; (3)输出总分最高分和最低分的名字;
(4)输出总分在340分,单科成绩不低于80分的名单; (5)求出各科平均分数; (6)按总分排名;
(7)输出补考名单并存入文件。
(五)某公司职工信息管理软件
职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。提供以下功能:
1)系统以菜单方式工作
2)职工信息录入功能(职工信息用文件或者数据库保存) 3)职工信息浏览功能 --输出