还剩39页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
报告编号第二组综合课程设计报告图书馆管理系统的设计与实现毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或__已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料对本研究提供过帮助和做出过贡献的个人或__,均已在文中作了明确的说明并表示了谢意作者签名 日 期 指导教师签名 日 期 使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它__手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容__签名 日 期 学位论文原创性声明本人郑重声明所呈交的论文是本人在导师的指导下__进行研究所取得的研究成果除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或__已经发表或撰写的成果作品对本文的研究做出重要贡献的个人和__,均已在文中以明确方式标明本人完全意识到本声明的法律后果由本人承担__签名日期年月日学位论文版权使用授权书本学位论文__完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等__手段保存和汇编本学位论文涉密论文按学校规定处理__签名日期年月日导师签名日期年月日目录TOC\o1-4\h\z\u摘要-1-第一章前言-2-
1.1系统前景-2-
1.2__环境简介-2-
1.3系统主要功能-2-第二章需求分析-3-
2.1系统功能需求-3-
2.
1.1借书操作-3-
2.
1.2还书操作-3-
2.
1.3新增操作-3-
2.
1.4删除操作-3-
2.
1.5更改操作-3-
2.
1.6查找操作-3-
2.
1.7显示操作-3-
2.2设计目标-4-第三章概要设计-5-
3.1图书馆管理系统概述-5-
3.2主界面模块-5-
3.3___模块-6-
3.
3.1图书维护模块-6-
3.
3.2读者维护模块-7-
3.4读者模块-7-
3.5提示模块-8-
3.6离开模块-8-第四章详细设计-9-
4.1登陆界面-9-
4.2新增图书功能实现-9-
4.
2.1新增图书或读者功能实现-9-
4.
2.2更改图书或读者功能实现-10-
4.
2.3删除读者或图书功能实现-11-
4.
2.4查找图书或读者功能实现-11-
4.
2.5借书功能实现-12-
4.
2.6还书功能实现-13-第五章系统实现-15-第六章实训小结-29-摘要在这次的实训中,我们第二组选择了图书馆管理系统作为我们的实训内容,这个系统的主要目的是利用面向对象程序设计来实现借阅者的借书还书查询书目等服务(每位借阅者最多只能借五本书)和图书___对图书的新增删除及读者信息的维护主要分为几个模块,分别为借书模块,还书模块,图书维护模块,读者维护模块,提示及离开最初做这个系统的时候,我们分为四个类,分别为读者类,读者库类,图书类,图书库类我们一个人负责一个类,最后再汇总后来慢慢的,我们把我们各自编的程序组合在一起,发现问题很多,就一点点修改和完善从开始到慢慢琢磨,我们学到了很多,对图书馆管理系统也慢慢的熟悉起来在这次实训中,我们不仅加强了对所学知识的认识,还很好的认识了面向对象设计的优越性,在编程中,我们用到了文件,让我们的数据可以从文件里写入和读出,就是运用了这学期所学的构造函数和析构函数来实现的还有利用平常不使用的递归来实现系统功能在实训过程中,我们通过分工完成每个模块,并将这些模块整合起来,完成了这次设计在设计中,我们利用VC++
6.0这个平台来实现及修改我们的程序充分利用C++的面向对象的特点,让我们的系统更加简洁关键词图书馆管理系统面向对象程序设计VC++
6.0第1章前言
1.1系统前景图书馆管理系统是我国大部分院校或其它部门不可缺少的部分书籍是人类精神食粮,尤其对一些学校,图书馆来说,非常重要图书馆管理系统能够为用户实现借阅图书、管理等,随着科学技术的不断提高计算机科学日渐成熟其强大的功能已为人们深刻认识它已进入人类社会的各个领域并发挥着越来越重要的作用作为计算机应用的一部分使用计算机对图书资源信息进行管理具有手工管理所无法比拟的优点.例如:查阅迅速、安全性高、可靠性高、存储量大、保密性好、成本低等图书馆管理系统具有实用,精简功能等效率,这些优点能够极大地提高图书馆管理的效率也是企业、学校的科学化、正规化管理与世界接轨的重要条件
1.2__环境简介面向对象程序设计是针对__较大规模的程序而提出来的,目的是提高软件__的效率面向对象程序设计具有封装性,多态性,继承性等特点面向对象程序设计是从C语言发展而来的,为了兼容C语言,C++保留了C的许多用法,人们在编写C++程序时也常常沿用C的某些传统用法
1.3系统主要功能图书馆管理系统应该具有以下几个功能1)借书功能2)还书功能3)图书维护功能4)读者维护功能5)提示6)离开第2章需求分析图书管理系统在生活中运用广泛,因此需要多种程序对它进行管理该系统能够存储借阅者的个人信息、借阅信息以及预定信息持有借阅卡的借阅者可以借阅书籍、返还书籍、查询书籍信息、预定书籍并取消预定等功能
2.1系统功能需求
2.
1.1借书操作由于系统面向不同的用户,在信息管理方面有不同的权限所以在设计时要对各种身份的登录用户设置不同的权限通过用户登录界面验证各种登录用户的身份,并判断其具有的权限,使其进入不同的界面,从而执行不同的操作借书操作是读者的功能,读者可以借在馆的书,不得借已被外借的书
2.
1.2还书操作还书操作是读者才能进行的操作,读者可以还已经借过的书如果读者并未借书是不能还书的,也就是说还书的那位读者必须是借书的那位读者
2.
1.3新增操作___对系统进行维护这一功能只允许系统___操作,即为了系统的安全性设置的___可以执行所有的信息添加操作,包括增加读者和图书在执行此操作时,___必须输入__,且输入__的次数不得超多三次,超过三次系统就会退出
2.
1.4删除操作___可以执行所有的信息删除操作,包括删除用户和删除图书
2.
1.5更改操作这一功能也是针对___而言的系统___可以执行所有的信息修改操作,包括修改用户和修改图书
2.
1.6查找操作查找功能允许___使用___可以通过查找图书编号,查看图书是否在馆也可以通过查看读者的信息
2.
1.7显示操作这一功能只面向___,可以显示图书和读者
2.2设计目标通过分析,图书馆管理系统主要实现以下功能1)编写图书借书模块,完成读者对相应图书的借阅2)编写图书还书模块,完成读者对图书的归还3)编写图书维护模块,可以登记新书,更改书目,图书查找,图书删除4)编写读者维护模块,用以新增读者,更改读者信息可以读者删除,读者查找5)编写提示功能,使得整个系统的用户界面友好可执行6)编写离开功能,实现管理后的系统退出第3章概要设计
3.1图书馆管理系统概述图书馆管理系统分为___和读者两大模块___模块主要负责图书维护和读者维护工作,读者模块可以进行借书还书操作系统关系图如下图
3.1所示
3.2主界面模块根据登陆类型的不同,进入主界面后,登陆者可以执行相应的操作如图
3.2所示主模块分为三个小模块1创建可视化界面模块,供用户选择并进行相关操作2将各个菜单项目和菜单加入菜单栏模块3根据不同的选择,响应各个__,即调用模块图
3.2主界面模块
3.3___模块___模块包含图书维护模块和读者维护模块如图
3.3所示图
3.3___模块
3.
3.1图书维护模块实现对图书的描述,图书的编号,书名,借出,还入等,需要实现的功能为图书编目,图书注册,更新书目,图书删除如图
3.4所示图
3.4图书维护模块登记新书将图书的特征信息(图书编号)存储在文件中,图书的借阅、图书信息的查询都是以其作为基础的更新书目当发现图书信息错误时,可以进行图书信息的修改图书查找对图书馆新进的书进行编制唯一的号码图书编号,以便图书的管理和查找图书删除将废旧的或丢失的图书信息删除,以减少数据库中的无用信息,也会减少图书查询中的错误信息
3.
3.2读者维护模块对读者信息描述,建立读者个人资料,借阅者管理需要实现的功能包括借阅者注册,借阅者信息更新,借阅者注销,借阅者信息的查询1新增读者借阅者作为图书馆流通的主体,其信息的注册(将读者的特征信息存储在数据库中)也是图书馆自动化必须完成的任务2更改读者信息当发现借阅者信息错误或者当借阅者的某些信息发生变动时,可以对读者信息进行修改3删除读者由于某些原因需要对该借阅者注销,只有满足条件的借阅者才能进行注销4)查找读者借阅者借阅书籍的历史查询如图
3.5所示图
3.5读者维护模块
3.4读者模块读者可以根据需要进行借书和还书操作如图
3.6所示
3.5提示模块当出现库存查无此书或读者时,给予相应提示
3.6离开模块实现管理后的系统退出第4章详细设计
4.1登陆界面在进入登陆界面时,根据提示信息做判断从键盘录入1通过输入__,__正确则进入___项目选2则直接进入读者项目___可以进行添加更改,删除等操作,读者可以进行借书还书操作如图
4.1所示图
4.1登陆界面流程图
4.2新增图书功能实现___根据实际对图书或读者进行维护1新增图书或读者2更改图书或读者3删除图书或读者4查找图书或读者5显示图书或读者6全删图书或读者
4.
2.1新增图书或读者功能实现进入新增界面时,输入编号和名字,判断信息合理,打开文件录入添加信息如图
4.2所示图
4.2新增模块流程图
4.
2.2更改图书或读者功能实现进入更改界面,输入编号,判断编号是否存在,编号不存在退出,编号存在继续输入新的名称,打开文件录入信息如图
4.3所示
4.
2.3删除读者或图书功能实现进入删除界面,输入编号,判断编号是否为空,编号为空输出不存在,并退出否则打开文件删除并更新信息如图
4.4所示图
4.4删除模块流程图
4.
2.4查找图书或读者功能实现___可以查找读者和图书的信息,包括图书编号书名,读者编号和姓名进入查找界面,输入编号,判断编号是否为空,编号为空输出不存在,并退出否则打开文件显示查找信息如图
4.5所示图
4.5查找模块流程图
4.
2.5借书功能实现进入借书界面,输入所要借图书的编号和书名先判断输入是否合理(及是否存在),不合理则退出,合理再判断是否在架,不在则输出已借出否则打开文件更新信息如图
4.6所示图
4.6借书模块流程图
4.
2.6还书功能实现进入还书界面,输入所要还图书和读者的编号先判断输入是否合理(及是否存在),不合理则退出,合理再判断该读者借书标记是否为0,不为0则输出没有借书,不能还书否则打开文件更新信息如图
4.7所示第5章系统实现我们做的图书馆管理系统能实现图书馆的借书还书,增添以及修改等基本功能,而且程序也能运行,以下就是程序运行的最后结果以及对各操作的解释运行环境图书管理系统的程序是在VC++
6.0的环境下实现运行的在进行编辑编译及运行等操作后,再根据输出信息提示输入相应的字符,就能看到结果了以下的图形就是运行后的几个步骤及解释图
5.1是对图书馆管理系统的主菜单中图书___的操作,进入图书___系统时需要__,如果输入错误,需重新输入__图
5.1输入__错误,重新输入但只有三次输入正确__的机会,不然则不能对图书___系统中的操作进行使用见图
5.2图
5.2输入__错误三次,系统将退出如果已经三次__输入错误,系统返回到图管理系统主界面见图
5.3图
5.3输入__错误三次,系统退出进入读者部分不需要__,可以直接进行操作从键盘输入2,进入读者部分见图
5.4图
5.4读者模块__输入正确,进入图书___部分见图
5.5图
5.5__输入正确,进入图书___界面按0选项离开,回到主菜单见图
5.6图
5.6离开图书___部分,回到图书馆管理系统主菜单图
5.7所展示的是进入图书___中的图书维护界面,按提示信息操作并显示其结果主要操作是关于新增,更改,删除,查找,显示,全删以及退出等图
5.7图书维护界面从键盘输入5,显示已存在的图书具体情况见图
5.8图
5.8更改前的图书显示从键盘输入1,进行新增图书见图
5.9图
5.9新增图书成功并显示从键盘输入2,进行更改操作见图
5.10图
5.10更改图书书名成功并显示再按5,显示更改和新增过后的图书见图
5.11图
5.11显示新增并更改后的图书从键盘输入3,进行删除操作见图
5.12图
5.12删除图书成功再按5,显示删除后的图书见图
5.13图
5.13显示删除后剩下的图书从键盘输入4,进行查找操作,按提示输入图书编号见图
5.14图
5.14查找已存入图书并显示若查找的书不存在或已删除将显示该图书不存在见图
5.15图
5.15查找不存在或已删除过的图书并显示图
5.16展示的是读者维护模块,实现了读者的新增,更改,删除,查找,显示,全退,删除等功能这些功能的操作情况与图书维护大致相同,具体结果见图
5.16-
5.22图
5.16读者维护界面图
5.17显示未操作前的读者信息图
5.18新增读者成功图
5.19更改读者成功图
5.20删除读者成功图
5.21查找删除后的读者,不存在图
5.22显示更改后的读者信息按0退出读者维护界面,回到主菜单见图
5.23图
5.23退出读者维护界面图
5.24—
5.28展示的是读者模块中的借书,还书及离开功能在主菜单中选择2读者及从键盘输入2,会显示1借书、2还书、0离开,再从键盘输入1选择1借书会显示提示信息“请输入读者编号”,我在这是输入的1号读者借了1号图书,操作成功见图
5.24—
5.28图
5.24借书成功图
5.25显示借书后的图书情况图
5.26还书成功图
5.27还没有借过的书不成功图
5.28离开读者模块,返回主菜单图
5.29是展示退出图书馆管理系统及对出程序运行,输入0,退出图
5.29退出图书馆管理系统第6章实训小结这次设计的是图书馆管理系统,系统分为___和读者两种权限读者部分可以实现借书还书基本功能,___部分可以实现图书和读者的维护,具体为新增、更改、删除、查找、显示、全删等功能首先,我们在初步运行程序时,遇到了各种各样棘手的问题,但是在我们四个人同心协力下,总算解决了那些问题比如说,老师让我们建立一个管理类,但是我们查看相关资料之后,发现需要用到数据结构中的链表结点我组成员一致认为自己数据结构基础没有好好夯实,不能完成此项操作,只好在主函数里面判断读者和___以完成两者的权限同时当我们的系统初步可以运行的情况下,读者还书模块出现了问题,主要就是,只要图书不在馆,任何读者都可以还书,这与事实相悖后来我们又在读者类里添加了一个函数,使得在还书是可以让读者和图书一一对应起来目前我们的系统只能实现一些简单的操作存在一些不足,比如___不可以改__,学生把书弄丢了,也没有什么赔款的项目,还有就是借书的时间问题等等,由于时间有限,如果加上那些可能又会出现更多的问题,又要花费我们更多的精力去改正和实现,所以目前就只能写到这里通过这次C++面向对象程序设计的实训,我们学到了很多设计思想和方法来解决实际问题由于图书馆管理系统应用范围广泛,而我们只是把这个实训课题比较中肯的完成了,但是我们对于以后能学好计算机相关专业课的信心还是大大地增加了最后感谢李老师的指导和同学们的帮忙____
[1]《C++程序设计》(第二版)谭浩强著清华大学出版社
[2]《C++面向对象程序设计》(第二版),陈维兴、林小茶著中国铁道出版社
[3]《C++语言程序设计》(第四版)主编郑莉董渊何江舟清华大学出版社
[4]《C++PrimerPlus(第五版)》[美]普拉塔著孙建春、韦强译人民邮电出版社
[5]《C语言程序设计》(第三版)谭浩强著高等教育出版社学位论文原创性声明本人郑重声明所呈交的学位论文,是本人在导师的指导下进行的研究工作所取得的成果尽我所知,除文中已经特别注明引用的内容和致谢的地方外,本论文不包含任何其他个人或__已经发表或撰写过的研究成果对本文的研究做出重要贡献的个人和__,均已在文中以明确方式注明并表示感谢本人完全意识到本声明的法律结果由本人承担学位论文__(本人签名)年月日学位论文出版授权书本人及导师完全同意《中国__学位论文全文数据库出版章程》、《中国优秀硕士学位论文全文数据库出版章程》以下简称“章程”,愿意将本人的学位论文提交“中国学术期刊(光盘版)电子__社”在《中国__学位论文全文数据库》、《中国优秀硕士学位论文全文数据库》中全文发表和以电子、网络形式公开出版,并同意编入CNKI《中国知识资源总库》,在《中国博硕士学位论文评价数据库》中使用和在互联网上传播,同意按“章程”规定享受相关权益论文密级□公开□保密(___年__月至__年__月)保密的学位论文在解密后应遵守此协议__签名_______导师签名______________年_____月_____日_______年_____月_____日独创声明本人郑重声明所呈交的毕业设计论文,是本人在指导老师的指导下,__进行研究工作所取得的成果,成果不存在知识产权争议尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或__已经发表或撰写过的作品成果对本文的研究做出重要贡献的个人和__均已在文中以明确方式标明本声明的法律后果由本人承担 __签名:二〇一〇年九月__日 毕业设计(论文)使用授权声明本人完全了解滨州学院关于收集、保存、使用毕业设计(论文)的规定本人愿意按照学校要求提交学位论文的印刷本和电子版,同意学校保存学位论文的印刷本和电子版,或采用影印、数字化或其它__手段保存设计(论文);同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允许他人依法合理使用(保密论文在解密后遵守此规定) __签名:二〇一〇年九月__日致谢时间飞逝,大学的学习生活很快就要过去,在这四年的学习生活中,收获了很多,而这些成绩的取得是和一直关心帮助我的人分不开的首先非常感谢学校开设这个课题,为本人日后从事计算机方面的工作提供了经验,奠定了基础本次毕业设计大概持续了半年,现在终于到结尾了本次毕业设计是对我大学四年学习下来最好的检验经过这次毕业设计,我的能力有了很大的提高,比如操作能力、分析问题的能力、合作精神、严谨的工作作风等方方面面都有很大的进步这期间凝聚了很多人的心血,在此我表示由衷的感谢没有他们的帮助,我将无法顺利完成这次设计首先,我要特别感谢我的知道郭谦功老师对我的悉心指导,在我的论文书写及设计过程中给了我大量的帮助和指导,为我理清了设计思路和操作方法,并对我所做的课题提出了有效的改进方案郭谦功老师渊博的知识、严谨的作风和诲人不倦的态度给我留下了深刻的印象从他身上,我学到了许多能受益终生的东西再次对周巍老师表示衷心的感谢其次,我要感谢大学四年中所有的任课老师和__员在学习期间对我的严格要求,感谢他们对我学习上和生活上的帮助,使我了解了许多专业知识和为人的道理,能够在今后的生活道路上有继续奋斗的力量另外,我还要感谢大学四年和我一起走过的同学朋友对我的关心与支持,与他们一起学习、生活,让我在大学期间生活的很充实,给我留下了很多难忘的回忆最后,我要感谢我的父母对我的关系和理解,如果没有他们在我的学习生涯中的无私奉献和默默支持,我将无法顺利完成今天的学业四年的大学生活就快走入尾声,我们的校园生活就要划上句号,心中是无尽的难舍与眷恋从这里走出,对我的人生来说,将是踏上一个新的征程,要把所学的知识应用到实际工作中去回首四年,取得了些许成绩,生活中有快乐也有艰辛感谢老师四年来对我孜孜不倦的教诲,对我成长的关心和爱护学友情深,情同兄妹四年的风风雨雨,我们一同走过,充满着关爱,给我留下了值得珍藏的最美好的记忆在我的十几年求学历程里,离不开父母的鼓励和支持,是他们辛勤的劳作,无私的付出,为我创造良好的学习条件,我才能顺利完成完成学业,感激他们一直以来对我的抚养与培育最后,我要特别感谢我的导师赵达睿老师、和研究生助教熊伟丽老师是他们在我毕业的最后关头给了我们巨大的帮助与鼓励,给了我很多解决问题的思路,在此表示衷心的感激老师们认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮助,感谢他耐心的__在论文的撰写过程中老师们给予我很大的帮助,帮助解决了不少的难点,使得论文能够及时完成,这里一并表示真诚的感谢开始菜单___读者图书维护读者维护后退后退后退后退后退图
3.1系统实体关系图还书借书主界面模块菜单项目添加模块响应各种__模块主界面模块___模块图书维护模块读者维护模块图书维护模块新增查找删除查找显示全删读者维护模块新增查找删除查找显示全删读者模块借书模块还书模块图
3.6读者模块结束开始可执行添,更改删,查,显示等操作图书___读者可执行借书,还书操作登陆界面开始输入图书编号(或读者编号)输入书名(姓名)打开文件录入添加信息结束开始结束编号是否为空输入图书(读者)编号输入新的书名(姓名)输出该图书(读者)不存在打开文件录入信息否是图
4.3更改模块流程图开始结束输入读者编号,图书编号读者编号是否为空图书编号是否为空图书是否外借不存在该读者,不能借书不存在该图书,不能借书该图书已经借出,不能借书打开文件输入信息否否否是是是图
4.7还书模块流程图开始结束输入读者编号,图书编号读者编号是否为空图书编号是否为空读者借书标记为0不存在该读者,不能还书不存在该图书,不能还书你没有借书,不能还书打开文件输入信息否否否是是是。