媒体库管理系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C++程序设计》课程设计报告
题目:媒体库管理系统设计
*名:***
学号: **********
专业班级:计科14 甲
指导老师:***
2014 年 7 月 1 日
浙江工商大学杭州商学院
目录
1课题目标 (2)
2程序具体实现原理 (2)
2.1 总体方案 (2)
2.1.1开发平台 (2)
2.1.2基本原理 (2)
2.2 程序各个功能说明 (3)
2.2.1 程序结构 (3)
2.2.2 程序各主要功能的实现 (3)
3 课程设计调试与测试报告 (9)
4 课程设计总结 (11)
附件程序清单(源程序) .................................................. 错误!未定义书签。
1 课题目标
程序基本功能:
(1)添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再添加新的数据。
(2)查询物品
可按照三种方式来查询物品,分别为:
按标题查询:输入标题,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”;
按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”;
按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有物品!”;
(3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行。
(4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
(5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,则提示“物品库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。
(6)统计信息
输出当前物品库中总物品数,以及按物品类别,统计出当前物品中各类别的物品数并显示。
(7)物品存盘:将当前程序中的物品信息存入文件中。
(8)读出物品:从文件中将物品信息读入程序。
2 程序具体实现原理
2.1 总体方案
(1)程序采用双向链表数据结构实现。
(2)用类来实现数据的封装。
(3)使用文件的输入输出流实现对记录的保存与读取。
2.1.1开发平台
操作系统:Win7
开发软件:Mirosoft Visual C++ 6.0
2.1.2基本原理
2.2 程序各个功能说明
2.2.1 程序结构
1.类设计
基类:Tushuguan
数据成员:作者、编号、标题、评级、类别编号
成员函数:display() 输入姓名、编号、标题、评级、类别编号class Tushuguan
{public:
char name[256]; //作者
int num; //编号
char biaoti[256]; //标题
char pingji[256]; //评级
int x; //类别编号
void display(){cout<<"作者:";cin>>name; cout<<"编号:";cin>>num;
cout<<"标题:";cin>>biaoti; cout<<"评级:";cin>>pingji;
cout<<"类别编号(1.图书,2.视频光盘,3.图画):";cin>>x; }};
派生类:Tushu Shipinguangpan Tuhua
①Tushu 数据成员:出版社ISBN号页数
成员函数:display1() 调用基类的display()函数和输入课时
Teacher(int s=800) //基本工资赋值
class Tushu:public Tushuguan
{public:
char cbs[256]; //出版社
int hm; // ISBN号
int yeshu; //页数
void display1(){cout<<"请输入图书的"; Tushuguan::display();cout<<"请输入图书的出版社:";cin>>cbs; cout<<"请输入图书的ISBN号:";cin>>hm; cout<<"请输入图书的页数:";cin>>yeshu; }};
②Shipinguangpan 数据成员:名字时长年份
成员函数:display1() 调用基类的display()函数
Shiyanyuan(int s=650,int b=150) //基本工资及补助赋值
class Shipinguangpan:public Tushuguan
{public:
char mingzi[256]; //名字
int year; //年份
int shichang; //时长
void display1(){cout<<"请输入视频光盘的"; Tushuguan::display();cout<<"请输入视频光盘出品者的名字:";cin>>mingzi; cout<<"请输入视频光盘出品年份:";cin>>year; cout<<"请输入视频光盘视频时长:";cin>>shichang; }
};
③Tuhua 数据成员:国籍、长、宽
成员函数:display1() 调用基类的display()函数
class Tuhua:public Tushuguan
{public:
char guoji[256]; //国籍
int chang; //长
int kuan; //宽
void display1()
{cout<<"请输入图画的"; Tushuguan::display();cout<<"请输入图画的出品国籍:";cin>>guoji; cout<<"请输入图画作品的长:";cin>>chang; cout<<"请输入图画作品的宽: