图书管理实验报告_第1页
图书管理实验报告_第2页
图书管理实验报告_第3页
图书管理实验报告_第4页
图书管理实验报告_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

图书馆管理系统编程实践报告(2013)实习主题:假设一本书的基本信息由以下数据项描述:1.图书编号(设置为无符号长整数);2.书名(设置为不超过30个字符的字符串);3.作者姓名(设置为不超过20个字符的字符串);4.出版社(设置为不超过30个字符串的字符串);5.关键词(最多5个,每个关键词是一个不超过10个字符的英语单词);其中,每本书的书号、书名、作者姓名和出版社都是独特的。请用班级表格来构造一个小的书籍和数据分类系统(模拟)。该系统应能提供以下功能:1.图书数据库:从键盘输入各种图书和资料以建立图书数据库;根据从小到大的图书编号顺序,设置要组织和存储的图书;2.图书查询功能:1)阅读可以通过提供书名来查询。如果书还在图书馆,列出书的信息;2)读者可以通过提供图书编号进行查询,如果图书还在图书馆,请列出图书资料;3)读者也可以通过提供关键词(最多5个:)进行查询。正常情况下,读者提供查询的关键词数量不会超过图书馆登记的图书的原始关键词数量)。如果提供的关键词与原书中的关键词匹配,则满足要求的所有书籍和材料将被列出供读者选择;读者可以从系统中列出的可用图书和资料中按图书编号办理借阅手续。3.借阅功能:当被锁定查询的图书确实在图书馆时,读者可以通过提供图书编号的方式办理借阅手续(每次操作只能借阅一本书);1)登记借款人姓名(字符串不超过20个字符)、电话号码(无符号长整数)和借款日期(年、月、日,均为整形数量);4.图书归还功能:1)从图书中删除图书的借阅者信息;2)图书资料归类为“图书仍在图书馆”;5.提醒功能:管理人员定期列出借款人借出的图书资料,以检查是否有逾期借款人,如果有,发出通知督促借款人还款。附注:1.理论上,图书馆的藏书数量不应受到限制(事实上,它受到硬件材料的限制)2.图书数据库可以采用以下组织形式:)1)每本书的材料由基础材料和借阅材料组成。所有的书籍和材料都通过一个链接列表链接在一起;2)每本书的材料也由基础材料和借款人材料组成,但所有的书和材料都分别由非借出链表和借出链表连接。3.在考虑设计功能的实现之前,请确认图书资料的组织形式。4.模拟图书情报系统工作的主要功能的基本要求如下:1)在键盘上输入每本书的数据,并在存储区建立一个图书数据库。由于图书数量无法预测,所以当输入的图书数量为0时,入学考试问题被设置为指示输入的结束。这也是在正常操作期间向图书馆添加新书时完成的。2)输出图书馆所有图书资料的列表。此操作仅由管理人员使用。3)输出从图书馆借出的天数列表。此操作仅由管理人员使用。4)。查询书籍、借书、还书和添加书籍;5)每本书借出或归还后,将输出图书馆的图书信息或借阅者的登记资料,以便完成操作。6)未在图书馆登记的图书不能办理借阅手续。当然,不从图书馆借书的图书行业,如果已经改成地图,就不能在这里办理还书手续。源代码:#包括#包括#包括#包括#包括结构日期/日期数据结构年份;国际月;国际日;结构化人员/个人信息数据结构 char name20;长途电话;/电话号码日期b;/声明日期b是结构数据成员;结构化图书/图书信息数据结构长ISBN/书号char Bname31;/标题char Bwrite20;/作者姓名char Bprint31;/出版社名称char * Bkeyword5;/关键字书籍*链接;/指向下一个节点人员消息;/声明messavoid creat();/创建图书馆无效打印1();/输出在书库图书无效查询1();/书号查询无效查询2();/书名查询无效查询3();/关键词查询空的借入();/借书无效打印2();/输出借出图书void invert();/还书空虚的冲动;/催还图书void deleter();/删除图书void insert();/增加新书;图书馆:图书馆()/构造函数 libout=空;库: 库()/析构函数;整数(整数是的,整数m,整数D) /计算某年某月某日是当年第几天 int dy=0;M=M-1;而(M0)做if(M=2)if(Y%4=0)(Y0!=0)|(Y0=0)dy=dy 29否则dy=dy 28其他 if(M=7)(M % 2=1)| |(M=8)(M % 2=0)dy=dy 31否则dy=dy 30M=M-1;同时(M0);dy=dy D;返回死亡;整数(整数是的,整数M) /判断某年某月有几天if(M=2)if(Y%4=0)(Y0!=0)|(Y0=0)返回29;否则返回28岁;其他如果(M=7)(M%2=1)|(M=8)(M%2=0)返回31;否则返回30;年内天数(年内)/判断某年有几天if(y%4=0y0!=0)|(y0=0)返回366;否则返回365;长Leapdays(int yy1,int yy2) /计算某年两年之间相距多少天长y,m,d=0;同时(yy1p-国际标准书号;if(p-ISBN 0)cout n tThe ISBN illedal!;如果(p-ISBN=0)中断;同时(p-ISBN=0);if(p-ISBN 0)cout n 输入bname : ;获取(p-Bname);cout n TinPut Bwrite :获取(p-Bwrite);cout n 输入b打印: ;获取(p-Bprint);cout n 输入Bkeyword:(输入空值结束)。对于(j=0;j5;j)cout n t否。关键词j=新字符20 1;获取(关键词j);if(strcmp(p-Bkeywordj,=0)休息;q-link=空;同时(国际标准书号!=0)一;如果(h=空)h=p;if(i2) temp=h;同时(p-ISBN临时-国际标准书号临时-链接!=空) k=温度;温度=临时链接;if (p-ISBN=temp-ISBN)如果(温度=h) p-link=temp;h=p;其他 k-link=p;p-link=温度;其他 temp-link=p;p-link=空;新书;coutnnNO 国际标准书号;if(p-ISBN 0)国家nt国际标准书号非法!同时(国际标准书号0);if (p-ISBN 0)cout n 退出bname : ;获取(p-Bname);cout n TinPut Bwrite :获取(p-Bwrite);cout n 输入b打印: ;获取(p-Bprint);cout n 输入Bkeyword:(输入空值结束)。对于(j=0;j5;j)coutntNO,关键词j=新字符20 1;获取(关键词j);if(strcmp(p-Bkeywordj,=0)中断;q=p;librin=h . /创建结束void library 3360: print 1()/输出在书库图书资料函数 int j;预订*p .p=librin如果(librin=空)coutnt列表为空“!其他做如果(p-ISBN=0)继续;cout n _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ n ;计数 n否ISBN n Bname : Bnamecout n Bwrite

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论