C++课程设计图书管理系统

上传人:飞*** 文档编号:30958425 上传时间:2018-02-03 格式:DOC 页数:23 大小:152.50KB
返回 下载 相关 举报
C++课程设计图书管理系统_第1页
第1页 / 共23页
C++课程设计图书管理系统_第2页
第2页 / 共23页
C++课程设计图书管理系统_第3页
第3页 / 共23页
C++课程设计图书管理系统_第4页
第4页 / 共23页
C++课程设计图书管理系统_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《C++课程设计图书管理系统》由会员分享,可在线阅读,更多相关《C++课程设计图书管理系统(23页珍藏版)》请在金锄头文库上搜索。

1、 课 程 设 计 报 告课程名称 C+课程设计 课题名称 图书管理系统设计 题目三:图书管理系统设计(一) 、课程设计题目:图书管理系统设计(二) 、要求: 使用二进制文件方式存储数据,系统以菜单方式工作(三) 、设计方法和基本原理: 1、功能描述: (1)新进图书基本信息的输入。(2)图书基本信息的查询。(3)对撤消图书信息的删除。(4)为借书人办理注册。(5)办理借书手续。(6)办理还书手续。2、问题的解决方案: 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系包括属性和行为; (3

2、)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述(包括属性和方法) ; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; ( 8)完成系统总结报告以及系统使用说明书一 、 设 计 内 容 与 设 计 要 求1.课程设计目的:从课程设计的实践活动中获得知识提高。要求学生达到熟练掌握 C+语言的基本知识和技能;基本掌握面向对象程序设计的思想和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,从而提高动手编程解决实际问题的能力。2.总体设计2.1 系统功能分析:系统通过调用函数来实现删除图书、读者信息,添加图书、读者信息等功能。de

3、lbook( )函数用于删除图书信息; addbook( )函数用于增加图书信息;borrowbook( )函数用于实现借书操作;returnbook( )函数用于实现还书操作等等;主函数用于掉用这些函数。2.2 系统功能模块划分与设计本系统定义了 Book 类、BDatebase 类、Reader 类、RDatebase 类这四个类,定义了 addbook ( )、addreader( )、borrowbook ( )、setname( )等函数来实现系统所需功能。2.3 系统功能模块图:33.详细设计3.1 读者类的设计该类定义了借书操作,还书操作,设置读者姓名等功能。Reader+nam

4、e20:char图书管理系统四个类 程序实现功能输出显示图书类 图书库类实验员 读者类行政人员 读者库类 文件录入 查询信息 删除信息 退出程序+no:int+tag:int+borbook:int+ getname():char+gettag():int+ getno():int+setname(char na):void+ delbook():void+ addreader(int n,char *na):void+ borrowbook(int bookid):void+ retbook(int bookid):int+ disp():void图 3.13.2 读者库类类的设计该类实现了

5、建立读者的个人资料,删除读者信息,输出读者信息等功能。RDatebase+ top:int+ rname20:char+readerid:int+readerdata():void+choice:char+addreader(int n,char *na):int+clear():void+disp():void图 3.23.3 图书类的设计图书类,可以实现对图书的描述,图书的编号,书名,借出,还入等操作。Book+no:int+name20:char+onshelf:int+getname():char+getno():int+gettag():int+setname(char na):vo

6、id+delbook():void+addbook():void+borrowbook():int+retbook():void+disp ():void图 3.33.4 图书库类的设计Xingzhengrenyuan+top:int+clear():void+addbook(int n,char *na):int+bookdata():void+bookdata():void+ disp():void图 3.44.调试与测试:4.1 系统调试在调试过程中,出现了一些错误。1、输入数据时,输错了数据的类型会造成死循环,因此输入时需要注意。2、一开始主界面输入非正确数字时,没有提示错误。容易造成

7、用户误解 图 4.1在主函数的 switch 语句结束处加上 default:cout #include /定义控制符#include /包含 string 的头文件#include /用来支持对磁盘文件的输入输出using namespace std; const int Maxr=100;const int Maxb=100;const int Maxbor=5; /以上三行声明 Maxr、Maxb、Maxbor 为常数据成员class Reader /声明类类型为读者 private: /声明以下部分为私有的int tag; /int no; /定义编号为整型char name10; /

8、定义长度为 10 的名字数组字符串int borbookMaxbor; /定义整型借书数组public: /声明以下部分为公用的Reader() /Reader 类构造函数char *getname() return name; /虚函数,返回 nameint gettag() return tag; /虚函数,返回 tagint getno() return no; /虚函数,返回 No.void setname(char na) /设置读者姓名函数 strcpy(name,na); /复制字符串 void delbook() tag=1; /删去图书信息void addreader(int

9、 n,char *na) /增加读者信息 tag=0; no=n; strcpy(name,na); for(int i=0;i choice; switch (choice) case 1: cout readerid; /输入读者编号cout rname; /输入读者姓名addreader (readerid,rname); break; case 2: cout readerid; /输入读者编号r=query(readerid); if (r=NULL) cout rname; r-setname(rname); break; case 3: cout readerid; r=quer

10、y(readerid); if (r=NULL) cout delbook(); break; case 4: cout readerid; r=query(readerid); if (r=NULL) cout disp(); break; case 5: disp(); break; case 6: clear(); break; default:cout choice; switch (choice) case 1: cout bookid; cout bname; coutbauthor;coutbprice;addbook(bookid,bname,bauthor,bprice);b

11、reak; /结束循环case 2: cout bookid; b=query(bookid); if (b=NULL) cout bname; b-setname(bname); break; case 3: cout bookid; b=query(bookid); if (b=NULL) cout delbook(); break; case 4: cout bookid; b=query(bookid); if (b=NULL) cout disp(); break; case 5: disp(); break; case 6: clear(); break; default:cout

12、 choice; switch (choice) case 1: cout readerid; cout bookid; r=ReaderDB.query(readerid);if (NULL=r) cout borrowbook()=0) cout borrowbook(b-getno(); break; case 2: coutreaderid; cout bookid; r=ReaderDB.query(readerid); if (r=NULL) cout retbook(); r-retbook(b-getno(); break; case 3: BookDB.bookdata(); break; case 4: ReaderDB.readerdata(); break; default:cout输入错误,请从新输入:;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号