一、代码行数及程序运行平台
本系统代码总行数为:2476。
程序运行平台为:DEV-C++ 5.11。
二、需求分析及系统总框图
2.1需求分析
2.1.1设计该系统的原因
本系统旨在实现一个小型的图书管理系统,对于一个小型的图书馆或藏书室
来说,实施本系统不仅可以减少工作人员数量,降低成本,而且可以大大提高工
作效率,降低工作强度,方便读者借书查书及办理各种手续,更方便工作人员对
图书进行更有效的管理。通过实现读者自主查询,分权限管理系统的方法,既节约的人工成本,方便使用,又可以保护系统中的信息,利于进行维护。程序主要实现读者管理、图书基本信息及库存管理、图书借还管理以及一些辅助功能等。
2.1.2 使用C++设计的原因
总所周知,C++是一门面向对象的编程语言,具有结构清晰,程序模块化和结构化;易扩展,代码重用率高,易维护,系统低耦合,利于减少程序的后期维护工作量等优点。这对于图书管理系统初期的设计和后期对系统中图书的管理和系统维护提供了很大的便利。多文件组织形式和类的运用更利于系统功能的模块化,封装则很好的保护了系统的数据,防止被外部破坏,提高了系统的稳定性。
2.1.3 功能需求
1.实现读者借阅图书:读者可以登录该系统,通过输入想借的图书的名字来实现借书。
2.实现读者归还图书:读者可以登录该系统,通过输入想还的图书的名字来实现还书。
3.实现对图书信息的综合管理:设置二级子目录实现管理员对系统中图书
信息的添加,删除,查找,修改,以及对图书架中的所有书籍信息的清空和
显示,读者则可以查找图书信息和让系统显示图书架中所有图书的信息。并且,
系统中的所有书籍信息会被存储到文件book.txt中。
4.实现对读者信息的综合管理:设置二级子目录实现管理员对系统中读者的
信息的添加,查找,删除,编辑和显示所有读者的功能,读者则可以创建个人
账号,设置密码和编辑个人信息,来访问系统,使用系统的功能。并且,系统
所有读者信息会被存储到文件reader.txt中。
5.实现在总目录和各个二级子目录中退出系统的功能,使得读者在误操作
或想要退出系统时,可以利用目录中的退出功能退出系统。
2.2系统总体框图如下:
三,模块设计及函数说明
1,模块设计
1,借书模块
用户可通过此模块,以输入书名的方式,查找书籍,进行借书。
2,还书模块
用户可通过此模块,以输入书名的方式,查找书籍,进行还书。
3,图书信息管理
此模块包含:添加图书,删除图书,查找图书,修改图书,清空图书架,返回上一步,退出系统七个模块。
3.1添加图书模块
系统将提示用户输入新添加的图书的信息,存储到文件book.txt中。
3.2删除图书模块
首先由用户输入要删除的图书的名称,然后调用删除函数,删除该图书的资料。
3.3查找图书模块
首先由用户输入要查找的图书的名称,然后调用查找函数,查找该图书的资料。
3.4修改图书模块
首先由用户输入要修改的图书的名称,然后调用修改函数,修改该图书的资料。
3.5清空图书架模块
系统将会把所有图书的资料全部删除,文件book.txt清空。
3.6返回上一步模块
系统将会返回用户身份信息选择界面。
3.7退出系统模块
将会退出系统,停止运行。
- 读者信息管理模块
此模块包含:添加读者,删除读者,查找读者,修改读者,返回上一步,退出系统六个模块。
4.1 添加读者模块
系统将提示用户输入新添加的读者的信息,存储到文件readers.txt中。
4.2 删除读者模块
首先由用户输入要删除的读者的姓名,然后调用删除函数,删除该读者的资料。
4.3 查找读者模块
首先由用户输入要查找的读者的名字,然后调用查找函数,查找该读者的资料。
4.4 修改读者模块
首先由用户输入要修改的读者的名字,然后调用修改函数,修改该读者的资料。
4.5 返回上一步模块
系统将会返回用户身份信息选择界面。
4.6 退出系统模块
将会退出系统,停止运行。
源码地址:
GeekclubC/C-book-management-system: 这是用C++和EGE图形库写的图书管理系统 (github.com)