图书管理系统的设计与实现实训报告_第1页
图书管理系统的设计与实现实训报告_第2页
图书管理系统的设计与实现实训报告_第3页
图书管理系统的设计与实现实训报告_第4页
图书管理系统的设计与实现实训报告_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

报告编号:第一组综合课程设计报告图书管理系统的设计与实现学生姓名: 指导教师: 李 杰 所 在 系: 电 子 信 息 系 所学专业: 计算机科学与技术 年 级: 08级(2)班 2010年6月目 录摘 要1第1章 前 言21.1系统前景21.2系统主要功能2第2章 需求分析3第3章 详细设计43.1读者管理43.1.1添加读者信息43.1.2修改读者信息53.1.3删除读者信息63.1.4查找读者信息73.1.5显示读者信息93.1.6 删除全部读者信息93.2图书管理103.2.1新增图书信息103.2.2更改图书信息113.2.3删除图书信息123.2.4 查找图书信息133.2.5 显示图书信息143.2.6 删除全部图书信息14第4章 系统实现1541借书操作1542还书操作1643图书管理1844读者管理2045退出程序24第5章 结论25参考文献:26摘 要图书借阅管理系统是一个学校不可缺少的部分,它的内容对于学校的管理者和读者来说都至关重要,直接关系到图书的借用率,所以开发图书管理系统能够为管理员和读者提供充足的信息和快捷的查询手段。 编写程序系统主要实现图书馆的增加图书、查询图书、删除图书、借阅图书、还书;增加会员、查询会员、删除会员、借书信息等智能化管理过程。图书管理者只需略懂电脑知识就可以简易的操作该图书借阅管理系统。我们利用所学的C+方法对其进行编程管理完成对图书维护和读者护,基本上完成了借书和还书的整个过程,保存所有的读者资料和图书资料。并且利用指针指向的方法,实现对读者数量和图书数量的统计,使数据明朗化,这样的操作使图书管理更为方便,节约了大量的人力和财力。在图书借阅管理程序中须实现以下功能: (1)图书修改功能:能对图书借阅系统存储的信息进行修改。提供两种修改方式,如按照图书编号修改、按照书名修改。图书编号是图书记录的自然顺序编号。 (2)图书删除功能:能对图书借阅系统的图书信息进行删除。删除时以记录为单位,能一次删除一条记录,也可以一次性删除全部图书信息。(3)借书功能:能对借出的图书作记录信息,能一次借出一本图书。 (4)还书功能:能将被借出的图书信息还原,能一次借出一本图书。 (5)保存功能:能将记录保存在任何自定义的文件中,如保存在:c:book.txt和c:reader.txt(6)通信录管理结束后,能够正常退出图书借阅管理程序。关键字:图书借阅 管理者 查询 面向对象 类第1章 前 言1.1系统前景随着社会的发展,科技的进步,用计算机处理图书馆借还书流程无疑会极大程度的提高效率和处理能力。我们将会看到排队等候借书还书的队伍不再那么长了,工作人员的出错概率也小了,读者可以花更多的时间在选择书和看书上。本次实训我们就以广为熟知的图书管理系统的设计与实现为实例来说明VC+简单操作的方法。C+是一个面向对象的程序设计语言,可以让我们更好的掌握面向对象思想解决实际问题的能力。1.2系统主要功能(1)图书管理(增加图书、查询图书、删除图书、图书借阅、还书); (2)会员管理(增加会员、查询会员、删除会员、借书信息);主函数通过用户的选择,通过 switch 结构,判断该调用哪个函数来实现用户的选择。主函数通过调用这些函数来实现图书借阅管理系统的操作,这些函数包括: 1.增加读者(addreader(int n,char *na,char *tel) 用户输入新增加的会员信息,将新增加的会员加入到reader.txt中。 2.查询读者(Reader readMaxr) 用户输入要查询的会员信息,如果找到就显示出相关信息。 3.删除会员(delreader()) 用户输入要删除的会员编号,然后将指定的会员从会员链表中删除。 4.图书借阅(borrowbook(int bookid)) 输入会员编号,如果是会员就输入要借阅的图书编号,完成借阅操作;如果不是会员,则不能借书。 5.归还图书(retbook(int bookid)) 用户输入要删除的图书编号,完成图书的归还操作。同时在图书库和会员库中删除借书信息。 6.增加图书(addbook(int n,char *na,float pri,char *w,char *pub)) 用户输入新增加的图书信息,将新增加的图书加入到图书库中。 7.查询图书(Book *query(int bookid)) 用户输入要查询的图书信息,如果找到就显示出相关信息。 8.删除图书(delbook()) 用户输入要删除的图书编号,然后将指定的图书从图书库中删除。 9.借书信息(int bookid) 输入指定的会员编号,如果该会员已经借了书,就显示出该会员的借书信息;如果没借书就显示出相应的提示信息。 第2章 需求分析要完成这个题目,主要是建立解决图书和读者的信息的类,解决的方法是两个类,分别用于存储图书和读者。解决了这个问题后就是如何建立这两个链表的联系了,解决的方法是在设一个借书人编号,在读者中设一个数组用于存读者借的书。解决了这两个问题,剩下的工作就简单了只需类的封装的操作就可以了。在图书借阅管理程序中须实现以下功能: (1)图书修改功能:能对图书借阅系统存储的信息进行修改。提供两种修改方式,如按照图书编号修改、按照书名修改。图书编号是图书记录的自然顺序编号。 (2)图书删除功能:能对图书借阅系统的图书信息进行删除。删除时以记录为单位,能一次删除一条记录,也可以一次性删除全部图书信息。(3)借书功能:能对借出的图书作记录信息,能一次借出一本图书。 (4)还书功能:能将被借出的图书信息还原,能一次借出一本图书。 (5)保存功能:能将记录保存在任何自定义的文件中,如保存在:c:book.txt和c:reader.txt(6)通信录管理结束后,能够正常退出图书借阅管理程序。第3章 详细设计图书维护模块主要负责新增、更改、删除、查找、显示、全删、最后安全的推出此模块等等功能。3.1读者管理读者管理模块主要负责新增、更改、删除、查找、显示、全删、最后安全的推出此模块等等功能。首先,进入读者管理模块后,需要读者进行新增,这样才能确定读者,才可以查询图书和借阅图书,新增时还需要对读者进行编号和输入读者姓名,以便在借书时可以高效、快速的查询到这个读者。如果遇到特殊情况需要对读者的编号进行修改的话,就可以在此模块输入数字2进行更改。在图书馆里,发现系统中的存在的读者在图书馆里面实际并不存在,需要对该读者进行删除操作,删除对读者的所有记录。其次,在所有的读者库建立好了之后,图书管理员可以在此模块下查看相关的读者资料和借阅情况,管理员可以高效、快速的查找到相关的读者以及图书,另外图书管理员和用户都可以显示书库里面的所有的读者,也可以对整个图书库进行清空,但是这个操作在实际中要谨慎操作,不然会导致整个读者库无法恢复。最后,当此模块上的所有操作完成后,可以安全的退出这个模块,进行其他模块的操作,下面是这个模块的操作流程图。3.1.1添加读者信息首先输入新增读者编号和读者姓名,然后系统会按编号查找是否已存在这儿人,如果存在,则无法添加进去;如果不存在,系统会将新增读者的编号和姓名写入reader.txt文件中,并将删除标记置0。如图3.1输入编号和姓名查找此人是否存在,readi.getno()=readid&readi.gettag()=0添加无效将编号和姓名写入reader.txt中删除标记tag=0是否开始top+结束图3.1 添加读者信息流程图3.1.2修改读者信息首先输入读者编号,然后系统会按编号查找是否已存在这儿人,如果不存在,则显示“该读者不存在”;如果存在,则显示“输入新姓名”,然后输入新的姓名即可。如图3。2输入读者编号查找此人是否存在,readi.getno()=readid&readi.gettag()=0“该读者不存在”“输入新的姓名”否是开始调用设置姓名函数stenama(rname)将姓名存入结束图3.2 修改读者信息流程图3.1.3删除读者信息首先输入读者编号,然后系统会按编号查找是否已存在这儿人,如果不存在,则显示“该读者不存在”;如果存在,将将删除标记置1。如图3.3输入读者姓名查找此人是否存在,readi.getno()i=readid&readi.gettag()=0“该读者不存在”删除标记tag=0否是开始结束图3.3 删除读者信息流程图3.1.4查找读者信息首先输入读者编号,然后系统会按编号查找是否已存在这儿人,如果不存在,则显示“该读者不存在”;如果存在,显示该读者信息。如图3.4输入读者编号“该读者不存在”显示读者信息disp()是否查找此人是否存在,readi.getno()=readid&readi.gettag()=0开始结束图3.4 查找读者信息流程图当readi元素存在,将读者编号与read里的元素比较,看读者编号是否存在,不存在就可以进行添加新读者的工作。如图3.5readeri元素存在返回NULLread里的数组元素与读者编号相同且删除标记为0返回读者编号地址否否是是开始结束图3.5 查找此人的具体流程图3.1.5显示读者信息当需要显示的读者记录已经在存放读者记录的数组read内,就输出读者信息。如图3.6读者记录在读者记录数组read内显示读者信息图3.6 显示读者信息流程图3.1.6 删除全部读者信息删除全部读者信息就是直接将读者记录数组read内的元素全部清除,将数组长读置为0。3.2图书管理首先,进入图书管理模块后,需要对图书进行新增,这样才能供用户查询图书和借阅图书,新增时还需要对图书进行编号和拟定书名,以便在借书时可以高效、快速的查询到这本书。如果遇到特殊情况需要对图书的编号进行修改的话,就可以在此模块输入数字2进行更改。在图书馆里,发现系统中的存在的图书在图书馆里面实际并不存在,需要对该图书进行删除操作,删除对该本图书的所有记录。其次,在所有的图书库建立好了之后,用户可以再次模块进行借阅图书,用户可以高效、快速的查找到自己需要的图书,另外图书管理员和用户都可以显示书库里面的所有的图书,也可以对整个图书库进行清空,但是这个操作在实际中要谨慎操作,不然会导致整个图书库无法恢复。最后,当此模块上的所有操作完成后,可以安全的退出这个模块,进行其他模块的操作,下面是这个模块的操作流程图。这个模块中又分为两大类。一个是图书类,它用来实现对图书的描述, 图书的编号,书名,借出,还入,删除。另一个是图书库类,它用来实现对图书的维护,查找,删除。图书类:在这个类中,定义删除标记、在架标记、图书编号三个整型变量和一个图书名的字符变量,和几个成员函数。成员函数分别有:获取姓名、获取图书编号、获取删除标记、设置书名、删除图书、增加图书、借书操作、还书操作和输出图书的实现函数。图书库类:含构造函数,读图书信息。具体实现图书维护的内容。3.2.1新增图书信息首先,进入图书管理模块后,需要对图书进行新增,这样才能供用户查询图书和借阅图书,新增时还需要对图书进行编号和拟定书名,以便在借书时可以高效、快速的查询到这本书。如图3.7编号和书名是否正确图书维护是否图书新增结束fabing开始图3.7 新增图书信息3.2.2更改图书信息如果遇到特殊情况需要对图书的编号进行修改的话,就可以在此模块输入数字2进行更改。如图3.8编号和书名是否正确shifou图书维护是否图书新增开始结束图3.8 更改图书信息3.2.3删除图书信息在图书馆里,发现系统中的存在的图书在图书馆里面实际并不存在,需要对该图书进行删除操作,删除对该本图书的所有记录。如图3.9查找图书是否存在图书维护删除图书否是删除图书开始结束图3.9 删除图书信息流程图3.2.4 查找图书信息首先输入图书编号,然后系统会按编号查找是否已存在这本书,如果不存在,则显示“该图书不存在”;如果存在,显示该图书信息。如图3.10booki元素存在返回NULLbook里的数组元素与图书编号相同且删除标记为0返回图书编号地址否否是是开始结束图3.10 查找图书信息流程图3.2.5 显示图书信息当需要显示的图书记录已经在存放图书记录的数组read内,就输出图书信息。如图3.11图书记录在读者记录数组book内显示图书信息图3.11 显示图书信息流程图3.2.6 删除全部图书信息删除全部图书信息就是直接将图书记录数组book内的元素全部清除,将数组长读置为0。第4章 系统实现41借书操作读者在运行该程序时,首先会进入如下的界面,选择1,进入借书操作。如下图:(如图4.1.1)图4.1.1借书操作选择1-进行借书操作,输入读者编号:(1)编号错误,则不能借书成功: (如图4.1.2)图4.1.2编号错误(2)读者未错,图书不存在,同样不能借书成功: (如图4.1.3)图4.1.3读者不存在(3)只用当读者编号,及图书存在时,借书才能成功:(如图4.1.4)图4.1.4 正确借书操作42还书操作选择2进入还书系统,(1)和借书类似,只有输入正确的读者编号和图书编号,还书才能成: (如图4.2.1)图4.2.1 主界面(2)输入正确的读者编号和错误的图书编号,还书失败: (如图4.2.2)图4.2.2 不存在图书(3)输入错误的读者编号和书,还书失败:(如图4.2.3)图4.2.3 不存在读者43图书管理图书管理者在运行该程序时,选择3,进入图书管理,管理者通过0-6选项及提示完成如下图操作: (如图4.3.1)图4.3.1图书管理操作选择1-新增图书: (如图4.3.2)图4.3.2 新增图书选择2-更改图书姓名: (如图4.3.3)图4.3.3 更改图书选择3-删除图书(在图书损坏不宜借出时使用到): (如图4.3.4)图4.3.4 删除图书选择4-查找,此时查找不成功,若成功则没有这样的提示: (如图4.3.5)图4.3.5 查找图书选择5-显示图书馆图书存储和借出情况: (如图4.3.6)图4.3.6 显示图书信息选择6-全部删除图书馆的全部图书,若管理者要继续下面一系列的操作,则需要进行1新增这一操作: (如图4.3.7)图4.3.7 删除全部图书选择0,返回到主菜单(如图4.3.8)图4.3.8 返回主菜单44读者管理选择4,进入读者管理系统,管理者通过0-6选项及提示完成如下图操作: (如图4.4.1)图4.4.1 进入读者管理选择1-添加读者: (如图4.4.2)图4.4.2 添加读者选择2-对添加的读者进行修改: (如图4.4.3)图4.4.3 更改读者信息选择3-删除读者(该读者可能退馆或其他原因): (如图4.4.4)图4.4.4 删除读者选择4-查找读者及相关的借书情况:(如图4.4.5)图4.4.5 查找读者选择5-显示全部读者,及相关的借书情况:(如图4.4.6)图4.4.6 显示读者信息选择6-删除全部的读者资料。(如图4.4.7)图4.4.7 删除全部读者45退出程序选择6返回主界面第5章 结论这次基础强化训练的课程设计对于我们来说,有一定的难度。我们这组选题时选了这个图书管理系统的设计与实现,这个题目相对来说贴近生活,比较容易理解。但是设计一个较为完整的程序却不是这么简单的。首先我分析了相关的题目内容,并由此而进行了相关资料和书籍的查询工作然后才开始正式进行设计。

温馨提示

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

评论

0/150

提交评论