I目录第一章绪论..........................................................11.1图书管理系统的背景...............................................11.2图书管理系统的目标...............................................1第二章图书管理系统的需求分析............................................22.1功能需求.........................................................22.1.1功能模块图..................................................22.1.2图书管理功能................................................22.1.2.1新书入库.............................................22.1.2.2书目注销.............................................32.1.3读者借阅功能................................................32.1.3.1借书操作.............................................32.1.3.2预约操作.............................................32.1.3.3还书操作.............................................32.1.4图书查询功能................................................32.1.4.1著者著作.............................................32.1.4.2书目状态...........................................32.1.4.3姓名查找借阅信息.....................................32.1.4.4证号查找借阅信息.....................................32.1.4.5遍历书库信息.........................................42.2非功能需求.......................................................4第三章系统开发工具及关键技术............................................53.1系统开发工具.....................................................53.1.1VisualC++6.0...............................................53.2关键技术.........................................................53.2.1C语言......................................................53.2.2数组........................................................53.2.3文件........................................................63.2.4B树.......................................................6第四章图书管理系统的设计................................................74.1系统流程图.......................................................8第五章图书管理系统的实现................................................95.1图书管理事件的实现...............................................95.2读者借阅事件的实现..............................................105.3系统界面的实现..................................................12II5.3.1系统登录...................................................125.3.2系统图书管理页面...........................................125.3.3系统读者借阅页面...........................................135.3.4系统图书查询页面...........................................135.4系统的测试......................................................135.4.1图书信息录入测试数据.......................................135.4.2读者借阅操作测试数据.......................................155.4.3读者查询操作测试数据.......................................175.5在系统实现过程中遇到的问题与解决方案............................195.5.1B树操作指针移动问题.......................................195.5.2读取文件问题...............................................195.5.3系统功能完善问题............................................20第六章结束语...........................................................216.1课程设计总结....................................................216.2对图书管理系统的展望............................................216.3课程设计任务分配及致谢..........................................21参考文献.................................................................22附录.....................................................................23XX学院XX学院2009级本科生数据结构课程设计1第一章绪论1.1图书管理系统的背景在网络环境下,随着图书馆形态的变化,其资源形势,服务内容,管理模式将会发生相应的转变,传统的手工管理,不但工作效率低下,而且无法收集信息,很难进行信息的加工和及时的更新工作。所以设计一套具有现代意义的图书馆里系统软件非常需要!(当然我只是做了演示系统,实现基本功能而已。并不具备应用能力。)图书管理系统正是基于这样的背景提出来的,它的使用方便了图书管理人员和读者,提高了人员工作效率,实现了智能化管理。1.2图书管理系统的目标1)新书采编入库和清除书目(包括:书号,书名,著者,现存量,总库存量,出版年份,定价)。2)读者进行借书和预约操作。3)读者进行还书操作。4)读者进行查询操作。5)读者完成操作后,系统能够及时的更新信息。。XX学院XX学院2009级本科生数据结构课程设计2第二章图书管理系统的需求分析2.1功能需求2.1.1功能模块图图2-1功能模块图本系统的主要的功能包括图书管理模块,读者借阅操作模块和图书查询模块三大功能,如图2-1功能模块图所示,下面分别介绍图中所画出的每个功能模块的具体内容及所要实现的功能。2.1.2图书管理功能.2.1.2.1新书入库:所有的操作基于书目书号,先在系统操作界面中输入入库书号,接着判断原来书库中是否存在这种书目,如果存在直接在书目的新增册数。否则输入要录入的书目所有基本信息(包括:书号,书名,著者,册数,出版年份,定价)。图书管理系统图书管理模块读者借阅操作模块图书查询模块新书入库还书操作预约操作借书操作证号查找借阅信息著者著作姓名查找借阅信息书目注销书目状态遍历书库信息XX学院XX学院2009级本科生数据结构课程设计3.2.1.2.2书目注销:在系统操作界面中输入注销书号,接着判断原来书库中是否存在这种书号的书目,如果存在则提示是否删除(Y/N),否则提示不存在此书目。2.1.3读者借阅功能.2.1.3.1借书操作:在系统操作界面中输入借书书号,如果不存在此书号,系统则提示不存在此书目,存在则继续输入读者自己的借阅证号和姓名,如果姓名和证号不匹配读者信息的话,系统提示没有该读者信息。否则提示借书成功。.2.1.3.2预约操作:实现过程同借书基本相同。(注意:书目只有在书库中现存大于零才可以预约)。.2.1.3.3还书操作:进入系统界面后,首先输入需要归还的书号,如果不存在,系统则提示不存在此书目,存在则继续输入读者自己的借阅证号,如果匹配正确则提示还书成功,否则提示失败。2.1.4图书查询功能.2.1.4.1著者著作:进行此项操作后,系统提示输入要查询的著者姓名,如果输入的姓名存在则打印出该著者的所有的著作,否者提示不存在该著者编写的书目信息。.2.1.4.2书目状态:进行此项操作后,系统提示输入查询的书号,输入后如果书库如果不存在对应的书号则提示没有该书目,否则则显示该书目所有的状态,包括基本信息,借阅者信息,预约者信息。.2.1.4.3姓名查找借阅信息:进行此项操作后,系统提示输入要查找的读者姓名,如果读者信息匹配,则打印出该读者的所有借阅信息。否者提示没有找到记录。.2.1.4.4证号查找借阅信息:进行此项操作后,系统提示输入要查找的读者证号,如果读者信息匹配,则打印读XX学院XX学院2009级本科生数据结构课程设计4者所有的借阅信息。否则提示没有找到记录。.2.1.4.5遍历书库信息:进入系统界面后,如果执行此项操作,系统则打印书库所有的书目基本信息。(其实就是遍历B树)。2.2非功能需求开发的系统必须能够简便使用,用户能够很方便快捷的完成需要的操作。系统的界面也要达到一定的美观要求。系统安全性能够达到用户需要的级别。系统的容错能力也要考虑。XX学院XX学院2009级本科生数据结构课程设计5第三章系统开发工具及关键技术3.1系统开发工具3.1.1VisualC++6.0MicrosoftVisualC++,(简称VisualC++、MSVC、VC++或VC)微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。面向对象的可视化集成编程系统。它不但具有程序框架自动生成、灵活方便的类管理、代码编写和界面设计集成交互操作、可开发多种程序等优点,而且通过简单的设置就可使其生成的程序框架支持数据库接口、OLE2,WinSock网络、3D控制界面。它以拥有“语法高亮”,IntelliSense(自动