C++课程设计题目2016new(计科及网络) 下载本文

内容发布更新时间 : 2024/5/4 15:17:09星期一 下面是文章的全部内容请认真阅读。

中原工学院计算机学院

C++课程设计任务书

1. 设计目的

网络工程专业所开设的C++课程设计是教学实践环节中一项重要内容,进行此课程设计的旨在:

1.提高和加强学生的计算机应用与软件开发能力,使学生由初学者向专业的程序员过渡。

2.培养学生独立分析问题、解决问题、查阅资料以及自学能力,以适应计算机产业日新月异发展的形势。

3.学习和掌握C++程序设计方法以及上机调试技巧,为今后学习其它专业课程打好基础。

本次课程设计是以学生独立思考解决问题为主,教师指导为辅,结合上机操作,完成指定的任务,作出设计报告。

2.设计题目

(一)基础设计题目(必做题)(30分)

1. 定义一个公司类。(学号尾号奇数完成)

? 私有成员为,公司名称,总经理,公司成员(姓名、工作),采用指针动态数

组方式存储实验室成员。

? 重载“+”操作,表示两个公司合并,公司名称由两个实验室名称连接到一起,

第一操作数变为合并公司的总经理,第二操作数变为副总经理。 ? 重载[]操作直接获得第i个实验室工作人员信息。 ? 设计该类的对象不能拷贝构造及赋值 2. 设计一个仓库类(学号尾号偶数完成)

? 私有成员为,仓库名称,仓库中物品(名称,数量,单价),采用指针存储动

态数组方式存储学生信息。

? 重载“+”操作,表示两个仓库合并,仓库名称由两个仓库名称连接到一起,

其中新仓库为为两个仓库的所有物品,且同一种物品能够合并。 ? 重载[]操作直接获得第i个同学记录。 ? 该类的对象不能拷贝构造及赋值 3. (所有同学完成)要求:

? 设计抽象类:交通工具类。

? 派生类:汽车类、火车类、飞机类。 ? 设计函数:获得交通类型名称函数,函数可以根据不同交通工具类型输出不同

的运输方式获得交通类型名称。

? 设计运输函数,参数为运输人数,在不同派生类实现该函数,要求:汽车<40;

飞机<200;火车<2000;在不同类中如果参数超出范围则抛出字符串异常。

(二)任意题目,至少2题以上(不同题目有不同分值) 1. 商品销售统计系统(30分)

1)问题描述(功能要求):

a.问题描述

编写商品销售统计程序,商品的信息有商品的名称、计算单位(重量或件)、单价。所有商品的信息事先存入计算机,屏幕上显示所有的名称,选择商品名,输入商品计量单位(如重量、件数等),根据单价算出总价。客户一次购物可能购买多种商品,程序应计算出客户应付的钱款数。 b.基本要求

程序分为两部分:第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。程序运用时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换,第二部分运行时,首先先显示所有的商品名称及代码,用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码表示本次购买结束。

c. 测试数据

程序应输入不少于10种商品信息,并进行模拟运行。 实现提示:

本程序的商品信息管理可定义一个商品类,每种商品作为商品类的实例存储在数组中,可以尝试使用STL的vector和list。 重载输入输出操作,将商品信息保存于文件,以便预读取

选作内容:

程序在营业结束时统计每种商品的销售量,销售金额及总营业额,因此第二部分应有营业结束的选择,当用户选择此项时屏幕上显示当天营业的每种商品的销售量,销售金额及总营业额。注意:商品类的数据成员应曾加有商品的销售量和销售金额。总营额是所有营业额之和,可用静太数据实现,或可用原商品类派生出一个特殊的类,增加上面的数据成员及相应的成员函数。 d.问题的解决方案:

根据系统功能要求,可以将问题解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次;

(3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试;

(7)完成系统总结报告以及系统使用说明书。

2. 某公司的库存管理系统(30分)

a.问题描述(功能要求):

某公司现有以下设备:普通电视机、DVD、带DVD的电视机,带DVD的电视机的售价为普通电视机和DVD单价之和的80%,要求对所有的库存设备都能按照品名进行显示、查找、增加和删除、保存的功能。

b.问题的解决方案:

根据系统功能要求,可以将问题解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次;

(3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块;

(6)功能调试;

(7)完成系统总结报告以及系统使用说明书。 c.其它要求:

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块

3 学生选修课程系统设计(30分)

a.问题描述(功能要求):

假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计一选修课程系统,使之能提供以下功能: (1)系统以菜单方式工作?

(2)课程信息录入功能(课程信息用文件保存)--输入? (3)课程信息浏览功能--输出?

(4)查询功能:(至少一种查询方式)--算法? 按学分查询? 按课程性质查询? (5)学生选修课程(可选项)? b.问题的解决方案:

根据系统功能要求,可以将问题解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次;

(3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块;

(6)功能调试;

(7)完成系统总结报告以及系统使用说明书。 c.其它要求:

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块

4. 职工信息管理系统(30分)

a.问题描述(功能要求):

职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能: (1)系统以菜单方式工作?

(2)职工信息录入功能(职工信息用文件保存)--输入? (3)职工信息浏览功能--输出?

(4)查询和排序功能:(至少一种查询方式)--算法? ? 按工资查询 ? 按学历查询等

(5)职工信息删除、修改功能(任选项)? b.问题的解决方案:

根据系统功能要求,可以将问题解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次;

(3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试;

(7)完成系统总结报告以及系统使用说明书。 c.其它要求:

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块。

5. 成绩记录簿(30分)

1.问题描述(功能要求):

编制一个C++语言成绩记录簿,每个学生信息包括:学号、姓名、C++语言成绩。具体功能:

(1)创建信息链表并以磁盘文件保存;

(2)读取磁盘文件并显示输出所有学生的成绩; (3)按学号或姓名查询成绩; (4)添加成绩记录;

(5)修改指定姓名或学号的学生的成绩并可存盘;

(6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息。 2.问题的解决方案:

根据系统功能要求,可以将问题解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次;

(3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试;

(7)完成系统总结报告以及系统使用说明书。 3.其它要求:

(1)只能使用C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面 (3)学生可自动增加新功能模块

三.参考资料:

1.《C程序设计》 清华大学出版社 谭浩强 2.《C++程序设计教程》 清华大学出版社 强 能

3.《Visual C++ 使用速成》 清华大学出版社 沈纪新 4.《C/C++使用技巧1001例》 电子工业出版社 Kris Jamsa 5.MSDN

四.验收

程序完成后,由老师统一检查验收,交书面课程设计报告及程序清单各一份,字体要工整清晰。(需打印)

五.具体时间与地点安排

时间安排: 16周 17周 18周 上午 18周(周四、周五) 验收成绩 上午 上午 地点:南区计算机学院实验室机房 要求每个人必须验收程序,方可通过课程设计

六、课程设计报告格式要求

一、 课程设计目的及要求(二个题目写在一起) 1.设计目的 2.设计要求

(1)学籍管理(例) (2)封装字符串(例)

二、 课程设计具体实现 1.学籍管理

(1)总体设计(总的任务画出总体设计图,总体设计方案及主要设计原理;(算法的设计))

(2)详细设计(要求详细写出每个模块的功能实现,关键技术,关键代码解释等。) 例如:

登陆模块

主要完成功能为:当用户开始使用本系统,进入登陆模块。屏幕显示菜单提示,用户可根据需要选择相应功能。具体如下:1。数据录入 2。数据查询 ?????? 主要使用技术: 关键代码如下:(加上注释和解释) 数据录入模块 等等

(3)调试及问题解决 2.封装字符串 (1)总体设计 (2)详细设计

(3)调试及问题解决

三、结束语(包括感想、致谢、设计总结) 四、源代码(代码要加注释)