1、 计算机科学与技术学院计算机科学与技术学院 面向对象课程设计课程设计报告面向对象课程设计课程设计报告 (第六第六次次) *媒体管理系统媒体管理系统 姓姓 名:名: 班班 级:级: 2011 级计算机科学与技术一班 学学 号:号: 指指 导导 教教 师:师: 成成 绩:绩: 完完 成成 时时 间:间: 完完 成成 地地 点:点: 面向对象课程设计 2 计算机科学与技术学院程序设计 一、 设计任务分析 1 1、问题描述、问题描述 *图书馆中的资料很多,如果能分类对其资料流通进行管理,将会带来很多 方便,因此需要有一个媒体库管理系统。 图书馆共有三大类物品资料:图书、视频光盘、图画。 这三类物品共同
2、具有的属性有:编号、标题、作者、评级(未评级,一般,成人, 儿童)等。其中图书类增加出版社、ISBN 号、页数等信息;视频光盘类增加出品 者的名字、 出品年份和视频时长等信息; 图画类增加出品国籍、 作品的长和宽 (以 厘米计,整数)等信息。 2 2、功能要求、功能要求 (1) 添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了 重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再 添加新的数据。 (2)查询物品 可按照三种方式来查询物品,分别为: 按标题查询、 按编号查询、 按类别查询: 当输入相应信息时, 输出所查询的信息, 若不存在该记录,则提示“该标题
3、/编号/类别不存在! ” ; (3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行 (4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一 性。 (5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,则提示 “物品库为空! ” ,并返回操作;否则,输入要删除的编号,根据编号删除该物品 的记录,如果该编号不在物品库中,则提示“该编号不存在” 。 (6)统计信息 输出当前物品库中总物品数,以及按物品类别,统计出当前物品中各类别的物品 数并显示。 (7)物品存盘:将当前程序中的物品信息存入文件中。 (8)读出物品:从文件中将物品信息读入程序。 3 3、问题的
4、解决方案问题的解决方案 面向对象课程设计 3 计算机科学与技术学院程序设计 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。 二、模块设计与主要数据结构 1一共设计了七个类,分别是媒体类 ziliao,图书类 tushu,视频 光盘类 guangpan,图画类 tuhua,图书管理类 tushu_Mana
5、ge,视频光盘管理 类 guangpan_Manage,图画管理类 tuhua_Manage。下面以 ziliao,guangpan, guangpan_Manage 为例。 类名 ziliao(基类) 数据成员 成员函数 public: int number; 光盘编号; string title; 标题; string write; 作者; string level; 评级; ziliao(int n=0,string ti=“,string w=“,string l=“):number(n),title(ti),write(w),level(l); 带参数的构造函数; virtual v
6、oid Input(); 基类输入函数; virtual void Output(); 基类输出函数; int Getnumber()return number; 返回编号; string Gettitle()return title; 返回标题; 类名 图书类 guangpan(基类做为它的虚函数) class guangpan:virtual public ziliao 数据成员 成员函数 public: string name; 出品姓名; int date; 出品时间; int time; 播放时长; guangpan () 不带参数的构造函数 guangpan(int n,string ti,string w,string l,string