第11章 图书管理系统.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 图书管理系统

C语言程序设计基础及进阶教程 一、系统需求分析 二、系统总体设计 二、系统总体设计 三、系统的函数设计 三、系统的函数设计 四、系统需的运行测试 四、系统需的运行测试 四、系统需的运行测试 四、系统需的运行测试 四、系统需的运行测试 五、系统的可增加功能 六、系统关键技术剖析 六、系统关键技术剖析 七、导师点评 * * * * 第11章 图书管理系统 ● 目 录 系统需求分析 1 系统总体设计 2 系统的函数设计 3 系统的可增加功能 5 系统的关键技术剖析 6 系统的运行测试 4 导师点评 7 图书管理系统是现代学校图书管理工作不可缺少的一部分,是适应现代教育技术发展的需要、推动学校图书管理走向科学化、规范化的必要要求。 图书管理系统中的实体主要有图书和用户。对一般用户来说,主要功能有:查找图书、浏览图书、借书、还书等;对管理员来说,除了一般用户的权限外,还具备有管理功能,即:初始化系统、注册图书、注册用户、注销图书、注销用户、查找用户、浏览用户等管理和维护功能。在本系统中,为了说明系统的功能,淡化了用户的级别,没有管理员和一般用户之分,而将用户的级别的不同管理放在系统的增加功能上,供学生创新思考。 按照上面的需求分析,本系统的总体功能模块图如图11.1所示。 主要功能描述: 借书模块:正确用户的合法借书模块,有交互。 还书模块:正确用户的合法还书模块,有交互。 管理模块:实现注册用户和图书、注销用户和图书等。 查找模块:查找用户和图书、浏览用户和图书信息。 退出模块:系统的唯一出口。 图11.1 系统功能模块图 本系统中的数据主要包括:用户和图书信息。我们使用链表和文件来存储和组织数据。 系统处理数据的流程为: 进入系统后,出现主菜单之前系统首先初始化操作,自动装载数据文件中的用户和图书数据。 然后进入主菜单。可以选择管理模块,如果选择其它模块会有相应的数据出错提示信息。在本模块中,可以注册/注销多个用户和多本图书,然后返回主菜单。 在进行了管理设置后,就可以进入借书、还书模块或者进行查找模块进行查找和浏览。如果没有借书而就要还书都有出错警告信息。这三个模块可以交叉和重复进行。 退出模块是系统唯一出口。退出之前系统自动保存用户和图书信息到文件,并释放系统数据空间。 建立系统中的各个函数原型,进行模块化函数设计 。 在此需要说明的几个函数原型: 初始化系统:int init_system() 功能:从数据文件中装载数据,达到初始化系统的目的。 释放系统数据空间:void release_system() 功能:通过保存数据到数据文件,达到释放系统的数据存储空间目的。 统计图书数量:static int get_booknode_count(BookNode *book_list) 功能:通过遍历图书链表,达到统计图书数量的目的。 统计借阅者人数:static int get_borrowernode_count(BorrowerNode *borrower_list) 功能:通过遍历借阅者链表,达到统计借阅者人数的目的。 分配图书结点空间:static BookNode *alloc_booknode() 功能:申请一个图书结点,存储图书信息,分配图书空间。 分配借阅者结点空间:static BorrowerNode *alloc_borrowernode() 功能:申请一个借阅者结点,存储借阅者信息,分配借阅者空间。 释放图书结点内存:static void free_booknode(BookNode *node) 功能:删除图书链表中的一个结点,释放图书结点在内存所占空间。 释放借阅者结点内存:static void free_borrowernode(BorrowerNode *node) 功能:删除借阅者链表中的一个结点,释放借阅者结点所占内存空间。 加裁数据:static int load_all_data() 功能:从数据文件中逐条读取记录,并创建图书链表和借阅者链表。 主界面:void display_mainmenu() 功能:显示程序运行时的主菜单。 主函数:int main() 功能:整个系统的主控函数。 头文件:library.h 功能:声明函数原型,包含文件及自定义宏和数据结构。 可以制定详细的测试计划,然后根据测试计划设计测试用例,对程序进行彻底测试。 初始化系统后进入主界面: 管理维护子菜单: 注册用户: 注册图书: 信息查找子菜单: 浏览用户: 浏览图书: 查找用户: 查找图书: 借书: 还书: 退出 : 结合系统的实现情况,在此给出系统可增加的一些功能,以便学生上机对本系统进行改写,有些增加功能可以参考下章《工资管理系统》中实现的部分。 增加系统对输入数据的约束

文档评论(0)

精品文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档