数据结构课程设计图书管理信息系统.docVIP

数据结构课程设计图书管理信息系统.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计图书管理信息系统

图书管理信息系统 一、 课程设计题目:图书管理信息系统 二、课程设计内容: 实现图书管理信息系统的设计。这是一个数据结构的综合使用,涉及的知识比较全面,特别是对文件的使用更为全面。 进入系统后,操作员可进行系统维护、读者管理、图书管理、图书流通、退出系统等操作。 系统维护:有“初始化”和“读盘”两个重要操作。第一次开始运行时,必须选择“初始化”,使有关文件指针、计数器等初始化为0;而在以后的每次操作开始时,选择“读盘”,将保存过的相关图书信息磁盘文件读入,以便进行各类操作。 读者管理:可实现读者信息的追加一项输入。需要输入读者号、读者名、可借书数。 输入“y”可连续输入信息,若输入“n”则结束输入,退出读者管理。 图书管理:有“图书信息输入”和“图书信息查询”两个重要操作。若选“图书信息输入”,就进入相关子模块,在输入信息的同时建立相应的索引及索引文件和索引链头文件,输入书号、书名、作者名、出版社、分类号、藏书量等信息,根据提示输入“y”实现连续输入,若输入“n”则结束输入,退出图书管理;有了图书信息数据之后,就可以进行图书信息的查询以及图书借阅等操作了。若选“图书信息查询”,可根据提示按书号、书名、作者、出版社等进行查询,系统会将查询结果输出。 图书流通:有“借书处理”和“还书处理”两个重要操作。当选择“借书处理”,系统接受输入信息后,首先查询读者文件。若没查到,显示“非法读者!”,若查到,则再检查该读者书是否已借满,如果未借满,则继续检查图书文件;否则显示“书已借满!”。检查图书文件如发现书号不存在或书已借出,都会提示读者“非法书号!”或“书已借出”,否则,进行借出处理,修改借阅文件、读者文件以及图书主文件的相关数据项,并显示“借书成功!”。当选择“还书处理”,系统在接受输入信息之后,首先用书号查询借还书文件,若找到,则填入还书日期,然后再用书号查询图书主文件,修改借出数,用读者号查找读者文件,修改读者的借书数,而后显示“还书成功!”,否则显示“非法书号!”并返回主控菜单。 退出系统:当需要的操作完成后,选择该项,系统会自动将当前图书数据及相关的信息写入磁盘文件。待下次运行系统时,首先读入文件,再进行各种操作。 三、算法设计: 对于主关键字的查找,采取折半查找的算法,对于次关键字的查找,采取顺序查找的算法。 存储用到了静态链表和文件操作。 四、程序正确性验证(指边界测试数据,即程序对于精心选择的典型、苛刻而带有刁难性的几组输入数据能够得出满足要求的结果): (1)当输入相同的读者信息时: (2)当输入相同的图书信息时: (3)当借书时输入无效的读者号时: (4)当借书时输入无效的书号时: (5)当还书时输入错误的书号时: 五、课程设计过程中出现的主要问题、原因及解决方法: 出现的主要问题是:当连续输入三个字符串时,第二个字符串不能传入变量中; 原因:第一个字符数组的长度定义的有问题。 解决方法:让三个字符串分开输入,将第一个字符数组的长度加1。 出现的问题还有,就是对scanf和prinf的用法不熟。 ?课程设计的主要收获: 通过这次课程设计,我对学过的知识进行了综合,一些理解的不够深刻的问题,能得以解决。从碰到问题,在网上找资料,从图书馆借相关书籍看,请同学和老师帮忙,到真正解决问题,我经历了,从痛苦到喜悦的全过程。 这次课程设计给我更多的,我想还是那份编程的经验与其过程中的酸甜苦辣。 同时很感谢帮助过我的同学,更感谢胡老师的悉心教导。 ??对今后课程设计的建议: 希望老师在验收时,不要盲目的相信学生,也不要怀疑学生,仅此而已。 源代码 /*borrow.c*//*(1)借书处理算法*/ void BorrowBook(BookDbaseFile bf,BnoIdxFile bif,BbookFile bbf,ReadFile rf) { char dzh[4],sh[5],jyrq[8]; char a[5]; int i,j,k=0,jls=0; cout输入读者号:; cindzh; for(i=1;i=rf.len;i++) //查找读者文件 if(strcmp(dzh,rf.ReadRec[i].rno)==0) { k=i; break; } if(k==0) { printf(非法读者!\n); return; } if(rf.ReadRec[k].bn2=rf.ReadRec[k].bn1) { printf(书已借满!\n);return; } cout输入书号:; cinsh; strcpy(a,sh); j=BinSearch(bif,sh); //

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档