c++课设图书管理系统(共27页).doc
《c++课设图书管理系统(共27页).doc》由会员分享,可在线阅读,更多相关《c++课设图书管理系统(共27页).doc(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上南京航空航天大学面向对象程序设计语言课程设计报告图 书 管 理 系 统学号:姓名:日期: 目 录2223467123一 需求分析本系统旨在实现一个小型的图书管理系统,对于一个小型的图书馆或藏书室来说,实施本系统不仅可以减少工作人员数量,降低成本,而且可以大大提高工作效率,降低工作强度,方便读者借书查书及办理各种手续,更方便工作人员对图书进行更有效的管理。程序主要实现读者管理、图书基本信息及库存管理、图书借还管理以及一些辅助功能等。(1) 以菜单的方式工作(2) 图书、读者的基本信息的新增(3) 图书、读者的基本信息的修改(4) 图书、读者记录的删除(5) 图书的借阅,
2、归还(6) 查询图书、读者信息及借阅状态二 程序主要功能 该程序的主要功能有:l 读者功能可进行增加读者、读者信息修改、注销读者、读者查询、显示读者信息、显示所有读者信息等操作。l 图书信息管理可以进行查询图书、增加图书、删除图书信息、图书信息修改、显示全部图书信息等操作。其中添加内容包括:书名、ISBN编号、作者、出版商、出版日期、方便读者查看;l 图书借还功能 应该说这是整个系统最主要的功能,借还时要输入编号已及读者编号l 帮助一个简单的操作指南,指导用户下一步该如何操作。l 退出系统在运行时将从文件载入信息。运行程序后每一步都会有详细的提示,操作简便,大多数地方都考虑到防止用户出现误操作
3、的情况,以提高程序的健壮性,可以放心使用!三程序运行平台该程序是用VC+6.0制做的,使用Microsoft Visual C+ 6.0运行该程序,具体操作是:打开Microsoft Visual C+ 6.0,菜单栏里点文件打开工作区找到“图书管理系统.dsw”这个文件打开,或者在资源管理器中双击该文件,此时,VC+6.0会自动打开,并载入该系统相关资源,点击Run命令菜单或者或用快捷键Ctrl+F5运行该程序。trl计分析能借书/还书读者信息管理图书管理系统图书信息管理帮 助统计查询.新增图书信息.删除图书信息.显示图书信息.修改图书信息.帮助说明.显示读者信息.返回上一层.新增读者信息.
4、修改读者信息.删除图书信息.显示图书信息.帮助说明.返回上一层 输入图书编号及读者编号.还书 借书.返回上一层四系统功能框架图五程序类说明有关图书信息的类struct BookInfochar BookCode6;/图书编号char BookName30;/图书名字char BookAuthor20;/作者名 char BookPress50;/出版社 char BookPublicationDate8;/出版日期 char ISBN8;/图书isbn号 char BookStatus;/图书借阅状态 0未借出 1借出 char ReaderCode6;/读者编号 编号为0为未借阅char I
5、sAvailable;/图书是否有效,0无效,1,有效 ;void AddBookInfo();/增加图书void ModifyBookInfo();/修改图书void DelBookInfo();/删除图书int CountBook();/获得图书记录数int IsBookExist(char *);/判断图书(编号)是否存在void ShowBookInfo();/显示图书清单 void ShowReaderInfo(); /显示读者清单int IsBorrow(char *);/判断是否在借int IsBorrowed(char *);/统计在借书的总数 void BookBorrow(
6、);/借书手续 void BookReturn();/还书手续有关读者信息的类struct ReaderInfochar ReaderCode6;/读者编号 char ReaderName20;/读者姓名 char Sex3;/读者性别 char IsAvailable;/读者是否有效,0无效,1,有效 ;void AddReaderInfo();/增加读者void ModifyReaderInfo();/修改读者void DelReaderInfo();/删除读者void ShowReaderInfo(); /显示读者清单int CountReader();/获得读者记录数六.模块分析1、读
7、者信息:下设子菜单,包括:a.新增读者 b.修改读者c.删除读者d.读者查询 e.显示读者信息 f.返回上一层 (1)读者编号:读者唯一的识别方式,所以不可以重复,长度小于六个字符。(2)读者姓名:长度小于20个字符。(3)读者性别:长度小于三个字符。2、书库信息:该部分内容最丰富,下设子菜单,包括a.新书入库 b.删除 c.修改 d.返回上一层 链表的思路也跟读者信息一样,从头结点开始建,每当新增加一个类节点时,就把新增结点加到链表尾部,再让其中的next指向NULL空,这里没有对链表进行排序。 有关菜单的制作,就是先显示菜单,让用户输入选择,进行输入有效性检查,然后用switch来对不同的
8、选择调用类中不同的函数。3、 借书/还书:借书需要判断的条件不只是判断图书是否存在、图书是否借出、读者是否存在。还书需要提供读者编号再判断图书是否已经借出。十程序源代码#include#include#include#include #include #includeusing namespace std;#define BOOKLEN sizeof(struct BookInfo)#define READERLEN sizeof(struct ReaderInfo) /函数声明void Welcome();int MainMenu();void SubMenu1();int CreatSub
9、Menu1();void SubMenu2();int CreatSubMenu2();void SubMenu3();int CreatSubMenu3();void SubMenu();int CreatSubMenu4();void AddBookInfo();/增加图书void ModifyBookInfo();/修改图书void DelBookInfo();/删除图书int CountBook();/获得图书记录数int CountReader();/获得读者记录数int IsBookExist(char *);/判断图书(编号)是否存在int IsReaderExist(char
10、*);/判断读者(编号)是否存在void AddReaderInfo();/增加读者void ModifyReaderInfo();/修改读者void DelReaderInfo();/删除读者void ShowBookInfo();/显示图书清单 void ShowReaderInfo(); /显示读者清单int IsBorrow(char *);/判断是否在借int IsBorrowed(char *);/统计在借书的总数 void BookBorrow();/借书手续 void BookReturn();/还书手续 void SearchBook();/图书查询 void SearchR
11、eader();/读者查询 int GetPosition(char *,struct BookInfo*);/修改图书信息,获得修改记录的位置 int GetRdPosition(char *,struct ReaderInfo*);/修改读者信息,获得修改记录的位置 void ShowAReader(char *); /显示指定编号的读者的信息int InvalidBookPosition();/查询第一条无效图书信息 int InvalidReaderPosition();/查询第一条无效读者信息 /图书结构定义struct BookInfochar BookCode6;/图书编号cha
12、r BookName30;/图书名字char BookAuthor20;/作者名 char BookPress50;/出版社 char BookPublicationDate8;/出版日期 char ISBN8;/图书isbn号 char BookStatus;/图书借阅状态 0未借出 1借出 char ReaderCode6;/读者编号 编号为0为未借阅char IsAvailable;/图书是否有效,0无效,1,有效 ;/读者结构体struct ReaderInfochar ReaderCode6;/读者编号 char ReaderName20;/读者姓名 char Sex3;/读者性别
13、char IsAvailable;/读者是否有效,0无效,1,有效 ; void Welcome()cout*endl;cout*图书信息借阅系统*endl; cout*endl;cout*现有图书CountBook()册读者CountReader()人*endl;int MainMenu()int m;while(1)cout*欢迎使用图书管理系统*endl;cout*endl;cout*1.图书信息管理*endl;cout*2.读者信息管理*endl;cout*3.借书 还书*endl;cout*4.统计 查询*endl;cout*0.退出 系统*endl;cout请选择0-4:m;if(
14、m=0&m=4)break;elsecout选择错误,请在0-4中选择endl;return m;int CreatSubMenu1()int m;while(1)cout*图书信息管理*endl;cout*endl;cout*1.新增 图书*endl;cout*2.修改 图书*endl;cout*3.删除 图书*endl;cout*0.返回上一层*endl;cout请选择0-3:m;if(m=0&m=3)break;elsecout选择错误,请在0-3中选择endl; return m; int CreatSubMenu2()int m;while(1)cout*读者信息管理*endl;co
15、ut*endl;cout*1.新增 读者*endl;cout*2.修改 读者*endl;cout*3.删除 读者*endl;cout*0.返回上一层*endl;cout请选择0-3:m;cin.ignore();if(m=0&m=3)break;elsecout选择错误,请在0-3中选择endl; return m;int CreatSubMenu3()int m;while(1)cout*图书流通*endl;cout*endl;cout*1.借书*endl;cout*2.还书*endl;cout*0.返回上一层*endl;cout请选择0-2:m;if(m=0&m=2)break;elsec
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 图书 管理 系统 27
限制150内