一、设计内容与设计要求
1.设计内容:媒体库管理系统设计
问题描述
图书馆中的资料很多,如果能分类对其资料流通进行管理,将会带来很多方便,因此需要有一个媒体库管理系统。
图书馆共有三大类物品资料:图书、视频光盘、图画。
这三类物品共同具有的属性有:编号、标题、作者、评级(未评级,一般,成人,儿童)等。其中图书类增加出版社、ISBN号、页数等信息;视频光盘类增加出品者的名字、出品年份和视频时长等信息;图画类增加出品国籍、作品的长和宽(以厘米计,整数)等信息。
功能要求
(1)添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再添加新的数据。
(2)查询物品
可按照三种方式来查询物品,分别为:
按标题查询:输入标题,输出所查询的信息,若不存在该
记录
混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载
,则提示“该标题不存在!”;
按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”;
按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有物品!”;
(3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行。
(4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
(5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,则提示“物品库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。
(6)统计信息
输出当前物品库中总物品数,以及按物品类别,统计出当前物品中各类别的物品数并显示。
(7)物品存盘:将当前程序中的物品信息存入文件中。
(8)读出物品:从文件中将物品信息读入程序。
问题的解决
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
根据系统功能要求,可以将问题解决分为以下步骤:
(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;
(2)分析系统中的各个实体及它们之间的关系;
(3)根据问题描述,设计系统的类层次;
(4)完成类层次中各个类的描述;
(5)完成类中各个成员函数的定义;
(6)完成系统的应用模块;
(7)功能调试;
(8)完成系统
总结
初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf
报告
软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载
。
目 录
一. 需求设计*************************************************07
二. 详细设计*************************************************08
三. 界面设计与各功能模块的实现*************************10
四. 系统调试*************************************************11
五. 使用说明及
心得体会
决胜全面小康心得体会学党史心得下载党史学习心得下载军训心得免费下载党史学习心得下载
************************************12
六. 源代码****************************************************13
一.需求分析
要求用C++面向程序设计语言编写一媒体库管理系统,
1、目的:
1)要求学生达到熟练掌握C++语言的基本知识和技能;
2)基本掌握面向对象程序设计的基本思路和方法;
3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2. 系统设计的意义:
系统要能够对相应的数据进行很好的测试,系统开始的密码系统有良好的保密性,系统的录入可录入相应的媒体的信息,系统的查询可查询媒体的作者、编号、评级、标题以及各种媒体独有的信息,系统的修改可修改媒体的错误信息,系统的删除可删除丢失媒体的信息。
2.系统功能需求
1.要求完成以下功能:
1)能够从屏幕上读取一个媒体的信息并将信息存入到数据文件中。
2)能够将指定的信息从文件中删除。
3)能够按编号、标题、类别对媒体的信息进行检索并将检索结果显示在屏幕上。
4)添加媒体时,编号唯一,若编号重复则不与添加。
5)如果检索不到相应的信息应提示用户。
密码系统登陆菜单
3.系统功能流程图
其他人员菜单
管理员菜单
退出
信息查询
退出
信息删除
信息显示
信息查询
信息添加
4.输入输出的要求
1.输入的要求:
通过主函数体调用其他函数应用系统主控界面包括媒体信息添加,查询,显示,删除等功能模块。媒体信息录入功能完成媒体信息的输入。查询功能可以对数据各分类的记录进行查询。修改功能可以对数据各分类进行修改。删除功能可以对数据进行删除。
2.输出的要求:
1)能够按编号、标题、类别对媒体的信息进行检索并将检索结果显示在屏幕上。
2)如果检索不到相应的信息应提示用户。
二.详细设计
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<<"请输入图画作品的宽: ";cin>>kuan; }};
Tushuguan
#name[256]:chai
#num:int
#biaoti[256]; char
#pingji[256]; char
#x:int
+display() void
具体如图:
基类
派生类
Tuhua
#guoji[]:char
#chang:int
#kuan:int
+display1():void
Shipinguangpan
#mingzi[]:char
#year: int
#shichang:int
+display1():void
Tushu
#cbs[256];char
#hm: int
#yeshu:int
+display1() void
三.界面设计与各功能模块的实现
1.界面设计
程序运行后会出现一个简捷的窗口,用户登录后可添加、查询、显示、删除数据。
2.功能模块实现设计
通过主窗体调用其他窗体。应用系统主控界面包括信息添加、查询、显示、删除等功能模块。信息添加功能完成媒体信息的输入;信息查询功能完成老师信息的查询;信息显示功能完成媒体信息的显示;信息删除功能完成媒体信息的删除。
具体举例如下:
1) 添加函数
void tushutianjia() //图书添加
{int n,m=3; ofstream outfile("图书.txt",ios::app); if(outfile.fail()){cout<<"open error!"<
>b; for(i=0;i>num1; cout<<"请重新输入图书的作者"<>nam; int n=0; for(j=0;j<100;j++) { ifstream infile("图书.txt",ios::in);infile>>t[j].num>>t[j].name;infile.close();if(t[j].num!=num1) n++;break; if(t[j].num==num1&&strcmp(t[j].name,nam)!=0) break; } for(j=0;j<100;j++) {ifstream infile("视频光盘.txt",ios::in);infile>>s[j].num;infile.close();if(s[j].num==num1) break; else n++;break; }
for(j=0;j<100;j++) { ifstream infile("图画.txt",ios::in);infile>>h[j].num; infile.close();if(h[j].num==num1) break; else n++;break; }strcpy(t[i].name,nam) ;t[i].num=num1;
for(j=0;j<100;j++){ifstream infile("图书.txt",ios::in);infile>>t[j].num; if(t[j].num!=0) m=3; else m=2; infile.close();}if(n==m) {outfile<>bh; for(i=0;i<100;i++) {ifstream infile("图书.txt",ios::in); infile>>t[i].num; if(t[i].num==0) break; if(t[i].num==bh) { n++; infile>>t[i].x>>t[i].num>>t[i].name>>t[i].biaoti>>t[i].pingji>>t[i].cbs>>t[i].hm>>t[i].yeshu;
cout<>s[i].num>>s[i].year>>s[i].shichang; if(s[i].num==0) break; if(s[i].num==bh) { n++;infile>>s[i].x>>s[i].num>>s[i].name>>s[i].biaoti>>s[i].pingji>>s[i].mingzi>>s[i].year>>s[i].shichang; cout<>h[i].num>>h[i].chang>>h[i].kuan; if(h[i].num==0) break; if(h[i].num==bh) infile>>h[i].x>>h[i].num>>h[i].name>>h[i].biaoti>>h[i].pingji>>h[i].guoji>>h[i].chang>>h[i].kuan; cout<>t[i].x>>t[i].num>>t[i].name>>t[i].biaoti>>t[i].pingji>>t[i].cbs>>t[i].hm>>t[i].yeshu; if(t[i].num==0) break; else cout<>bianha; for(i=0;i<100;i++) { infile>>t[i].num>>t[i].x>>t[i].name>>t[i].biaoti>>t[i].pingji>>t[i].cbs>>t[i].hm>>t[i].yeshu; if(t[i].num==0) break; if(t[i].num==bianha) { for(int j=i;j<100;j++){ t[j].num=0;strcpy(t[j].name," ");strcpy(t[j].biaoti," ");strcpy(t[j].pingji," ");strcpy(t[j].cbs," ") ; t[j].x=0;t[j].hm=0;t[j].yeshu=0; } } } nfile.close();ofstream outfile("图书.txt",ios::out);
for(i=0;i<100;i++) {if(t[i].num!=0) outfile<>t[i].x>>t[i].num;
if(t[i].num==0) break; if(t[i].x==1) n++ ;infile.close();}for(i=0;i<100;i++) {ifstream infile("视频光盘.txt",ios::in); infile>>s[i].x>>s[i].num; if(s[i].num==0) break; if(s[i].x==2) k++ ; infile.close();}for(i=0;i<100;i++) {ifstream infile("图画.txt",ios::in); infile>>h[i].x>>h[i].num;
if(h[i].num==0) break; if(h[i].x==3) m++ ; infile.close();}cout<<"图书馆有图书:"<
#include
#include
#include
int i; int j;
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;
} }; class Tushu:public Tushuguan
{public: char cbs[256]; int hm; int yeshu; void display1()
{ cout<<"请输入图书的"; Tushuguan::display();cout<<"请输入图书的出版社: ";cin>>cbs; cout<<"请输入图书的ISBN号: ";cin>>hm; cout<<"请输入图书的页数: ";cin>>yeshu; } };
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; } };
class Tuhua:public Tushuguan
{public: char guoji[256]; int chang; int kuan; void display1()
{cout<<"请输入图画的"; Tushuguan::display();cout<<"请输入图画的出品国籍: ";cin>>guoji; cout<<"请输入图画作品的长: ";cin>>chang; cout<<"请输入图画作品的宽: ";cin>>kuan; }};
Tushu t[100]; Shipinguangpan s[100]; Tuhua h[100]; void show()
{cout<<"请输入你要添加的对象 :"<>b; for(i=0;i>num1;
cout<<"请重新输入图书的作者"<>nam;
int n=0; for(j=0;j<100;j++)
{ ifstream infile("图书.txt",ios::in);infile>>t[j].num>>t[j].name;infile.close();
if(t[j].num!=num1) n++;break; if(t[j].num==num1&&strcmp(t[j].name,nam)!=0) break; }
for(j=0;j<100;j++)
{ ifstream infile("视频光盘.txt",ios::in);infile>>s[j].num;infile.close();
if(s[j].num==num1) break; else n++;break; }
for(j=0;j<100;j++)
{ ifstream infile("图画.txt",ios::in);infile>>h[j].num; infile.close();if(h[j].num==num1) break; else n++;break; }
strcpy(t[i].name,nam) ;t[i].num=num1; for(j=0;j<100;j++){ifstream infile("图书.txt",ios::in);infile>>t[j].num; if(t[j].num!=0) m=3; else m=2;
infile.close();}
if(n==m) {outfile<
本文档为【课程设计媒体库管理系统设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。