- 1、本文档共68页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目录
需求分析......................3
2、系统总框图....................3
3、每个模块的设计分析............4
4、列出所有定义的函数及说明......7
5、比较有特色的算法..............20
6、存在的问题与不足及对策........27
7、使用说明......................29
8、程序源代码....................34
需求分析
以往,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较繁琐。在借书时,读者首先将要借的书好借阅证交给工作人员,然后工作人员将每本书的信息卡片好读者的借阅证放在一个小格栏里,最后在借阅证和每本书贴的借阅条上填写借阅信息。在还书时,读者首先将要还的书交给工作人员,然后工作人员根据图书信息找到相应的书卡好借阅证,并填写相应的还书信息。
南京航空航天大学的图书馆有许多书,如果靠人工的方式来进行管理,那么工作量会非常大。图书的统计和管理会成为让人头疼的问题,读者借阅图书进行登记也会十分的不方便。这时,利用计算机来为我们进行这些统计管理的工作,可以给我们的生活带来大大的便利,并且提高工作效率。
由于条件有限,只能使用键盘输入书的信息,所以在输入图书的ISBN号时有些麻烦。所以在课设里,简化了ISBN号,没有输入书本的真实ISBN号。在现实生活中,采用扫描的方式录入ISBN号会更加准确,高效。
系统总框图
读者注册
读者注册
查找图书
管理员登陆
帮助
退出系统
[读者中心]
修改密码
注销帐户
查看借书情况
借还图书
返回菜单
[书单信息中心]
添加新书
删除图书
清空全部
修改图书
显示全部
返回菜单
[查找菜单]
按ISBN号
按书名
按出版商
按作者
关键字搜索
显示所有
返回菜单
可选择保存,也可不保存
图书管理系统
读者登陆
打开文本文件,读取提示信息
注册后返回主菜单
每个模块的设计分析
主界面模块
当进入该管理系统时候,提示相应的说明,够让使用者了解该如何进行操作。同时还要具有美观性。
用户通过键盘输入选择,程序通过检测输入内容进行比对,调用不同的函数,从而实现不同的功能。并且,在输入错误数据时程序不会崩溃。
读者注册模块
新用户使用该管理系统时,可以通过注册获得一个属于自己的账号。注册模块要引导读者完成一步步的注册步骤,并且在最后把注册所得账号告知读者。
在注册时,用了避免用户输错设定的密码,所以采用了输入两次的方式。如果两次输入的结果是一致的,那么就完成账号的注册。如果两次输的密码不一致,则用户需要重新输入设定的密码。这样的方式可以保证每一次的注册都是有效的,避免了用户因为输入错误,无法找回自己的密码。
读者中心模块
读者登陆成功之后才可以进入该模块。
在该模块,读者可以进行密码重置,注销,查看借书情况,借书,还书。并且也设有返回菜单功能。
注销帐户时,要考虑到删去该读者节点之后不能影响到整个链表的连续性。
所有函数均封装在ReaderList类中,信息存储在Reade类r中,ReaderList类中定义了三个个Reader*指针,一个是head_point, 作为链表的头结点;一个是tail_point,作为链表的尾指针;另一个是point,作为活动指针,在不同的类的成员函数中都可使用。为了防止该活动指针使用过频,造成几个函数同时使用同一个指针指向不明,在有些函数里还定义了一些临时指针。
借书还书模块
读者在登录之后才可以进行借书,还书。借还书函数会分别调用读者链表和书单链表中的借还书函数,并且在调用这些函数之前会先进行借还书检查。比如,你不能还你没有借过的书,也不能超过限定数目借书。用户需先登录,借还时要输入ISBN号。
以借书为例。
借书操作调用的直接函数为:
int ReaderList::Borrow(BookList*g, Reader *p, string bookISBN);
它会调用四个函数来完成借书操作:
bool BookList::Check_borrow_book(string ISBN_Of_Book) //Booklist中的借书检查
void BookList::borrow_book(string ISBN_Of_Book) //Booklist中的借书手续
bool ReaderList::Check_borrowBook(Reader*p, string BookISBN) //ReaderList中的借书检查
void ReaderList::borrowBook(Reader*p, string BookISBN) //ReaderList中的借书手续
在Booklist和ReaderList的类中都有
您可能关注的文档
最近下载
- 内蒙古呼和浩特市2024届小升初考试语文试卷含答案.doc VIP
- 八角嫁接育苗技术规程 DB45_T 2091-2019 广西.pdf VIP
- 《海上作战与三十六计》章节及期末答案-海军潜艇学院.docx VIP
- 人工湿地工程施工方案.docx VIP
- 2023广东湛江市检察机关招聘劳动合同制司法辅助人员(32人)笔试备考题库及答案解析.docx VIP
- GBT24353-2022风险管理指南.docx
- 国开电大学习网《高级财务会计》形考任务答案1-5答案.pdf
- 2023-2024学年山东省日照市高一下期末数学试卷附答案解析.docx
- 建筑图集-08J907 洁净厂房建筑构造.pdf VIP
- (正式版)D-L∕T 766-2013 光纤复合架空地线(oPGW)用预绞式金具技术条件和试验方法.docx VIP
文档评论(0)