- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
基于文件的图书管理系统
项目需求 1
总体设计 2
详细设计 3
项目需求
一、新书入库
图书信息包括书名,书号,库存量,现存量共4项.首先输入3本书的信息,并将其存入文件”book.dat”中.当有新书入库时,先判断文件中是否有此书(即比较书名),若有则修改库存量,现存量的信息;若无此书,则将该书的信息添加到文件中。
二、图书查询
输入一个书号,在文件中查找此书,若找到则输出此书的全部信息;若找不到则输出查找失败的信息。
三、借阅管理
1.每个读者的信息包括姓名,编号,1张借书卡(限借一本书),输入3个读者的信息存入文件“reader.dat”中.
2.借书登记:输入读者的编号,所借图书的书号,先判断姓名是否在文件“reader.dat”中,若有则将书号存入一张借书卡上(注:初始时借书卡的信息都为零,借书后借书卡的信息改为所借书的书号),并修改文件“reader.dat”的相应内容,同时修改文件“book.dat”中此书的现存量.若“reader.dat”无此姓名,则应提示错误。
3.还书管理:输入读者的编号,所还图书的书号,将借书卡的信息置为零,并修改文件“reader.dat”的相应内容,同时修改文件“book.dat”中此书的现存量。
四、输出全部图书信息和全部读者信息
五、退出系统
六、附加说明
系统将来完善的功能有:添加读者;一位读者可同时借阅和归还多本图书等
等。
总体设计
一、系统主功能模块
1.新书入库模块:可用一个函数insert_new_book(charbook_num[],charbook_name[],intnumber)来实现。形参分别为:书名,书号,以及有多少本书要入库,再根据要求将信息写入文件boot.dat中。又由于最开始要输入三本新书,故可以加一个初始化函数init_book(),但是初始化函数只执行一次,也就是在系统第一次运行的时候执行,此时可以根据判断是否存在boot.dat这个文件来决定是否执行初始化函数。
2.查询模块:可用一个函数voidfind_book(charbook_num[])来实现。找到就输出此书全部信息,找不到就输出查找失败信息。
3.借阅管理模块:
(1)三个读者的信息可以在系统初始化时完成.即可用初始化函数init_reader()来实现对读者的初始化。因为读者初始化函数也只是在系统第一次运行的时候执行一次,故也可以根据是否存在reader.dat文件来确定是否执行此函数。(到现在可以发现在系统初始化函数里,至少已经需要调用两个初始化函数了)
(2)借书登记模块:可用一个函数borrow_book(charreader_num[],charbook_num[])来实现。在函数中要分别判断:
a.该读者的编号是否已经存在,如果不存在,则提示错误。
b.该读者的借阅书是否已满(即最多只能借1本书)如果是,则提醒该用户先去还书。
c.输出的书号对应的书是否存在,如果不存在,则提醒读者不存在此书。
借书过程完成后,则对读者信息里的借书信息写上所借书号,并修改库存量。
(3)还书管理模块:可用一个函数return_book(charreader_num[],charbook_num[])来实现。在实现此函数时要判断:
a.该读者的姓名是否已经存在,如果不存在,则提示错误。
b.该读者是否已经借阅此书。如果没有,则提示错误。
c.还书过程完成后,则对读者信息里的借书信息清零,并修改库存量。3.输出图书和读者信息:可分别用模块print_book()和print_reader()来实现,
直接从book.dat文件和reader.dat文件中读取信息并输出。
4.退出系统:可用一个函数exit()来实现。首先将信息保存到文件,释放动态创建的内存空间,再退出此程序。
二、系统主功能模块结构图:
图书管理系统
新书入库图书查询借书登记退出系统输出图书信息输出读者信息
新书入库
图书查询
借书登记
退出系统
输出图书信息
输出读者信息
还书管理
详细设计
一、界面设计
此系统界面采用图形和数字化菜单设计。主界面设计如下:
图书管理系统图书管理系统主菜单
请选择相应的数字执行相应的功能:
0:退出此系统1:新书入库
2:图书查询
您可能关注的文档
- 再论啤酒沉淀物的分析.docx
- 电力设备交接和预防性试验规程.docx
- 彩塑教学设计.docx
- 小学四年级德育总结.docx
- 九年级第一学期英语教学工作计划范文.docx
- TD-SCDMA信令分析指导书.docx
- 电工班绩效考核制度.docx
- 生产管理知识运用现代教育技术来构建新型物理教学模式.docx
- 生活饮食医学(1).docx
- 2020年八年级数学暑假作业答案参考教学设计.docx
- 25上半年2期套题班-行政职业能力测验(八).docx
- 公考讲义-2025年1月时政汇总.pdf
- 2025年省考逻辑填空1000 高频实词积累+刷题早读课 讲义.pdf
- 25上半年2期套题班-行政职业能力测验(九).docx
- 2025四川事业编FB综合岗考试-综合能力测试讲义-主观题基础,案例分析题,公文写作及文章写作题.pdf
- 25上半年2期套题班-行政职业能力测验(五).docx
- 2025申论多省联考刷题课真题资料-2025国考执法课程.doc
- 2025申论多省联考刷题课真题资料-2024江西执法课程.doc
- 25上半年2期套题班-行政职业能力测验(十).docx
- 2025申论多省联考刷题课真题资料-2024福建县乡课程.doc
最近下载
- 阅读专项提升 赏析文章详略安排 课件 -语文六年级上册(统编版).pptx VIP
- 2023年12月江苏南通市崇川区教育系统面向2024届毕业生招考聘用30人笔试历年典型考点解题思路附.docx VIP
- 小学语文和信息技术融合的创新研究教学研究课题报告.docx
- “航空装备维修操作技能训练”课程教学设计.docx VIP
- ISO11737 1评估产品中的微生物数量中文版.pdf
- 一年级《认识人民币》作业设计 .doc VIP
- 单招英语试卷及含答案 (五).pdf VIP
- 回顾与反思国内外校园欺凌研究综述.docx VIP
- 景德镇市2025届高三第二次质检英语试卷(含答案).pdf VIP
- 健康体检人群代谢综合征调查以及健康管理干预的方法和效果分析.docx VIP
文档评论(0)