图书管理系统的 设计说明书.doc
文本预览下载声明
图书管理系统的设计说明书
一、设计内容与设计要求
1.课程设计目的:
从课程设计的实践活动中获得知识提高。要求学生达到熟练掌握C++语言的基本知识和技能;基本掌握面向对象程序设计的思想和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,从而提高动手编程解决实际问题的能力。
2.总体设计
2.1 系统功能分析:
系统通过调用函数来实现删除图书、读者信息,添加图书、读者信息等功能。delbook( )函数用于删除图书信息;addbook( )函数用于增加图书信息;borrowbook( )函数用于实现借书操作;returnbook( )函数用于实现还书操作等等;主函数用于掉用这些函数。
2.2系统功能模块划分与设计
本系统定义了Book类、BDatebase类、Reader类、RDatebase类这四个类,定义了addbook ( )、addreader( )、borrowbook ( )、setname( )等函数来实现系统所需功能。
2.3 系统功能模块图:
3.3.详细设计
3.1 读者类的设计
该类定义了借书操作,还书操作,设置读者姓名等功能。
Reader +name[20]: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.1
3.2 读者库类类的设计
该类实现了建立读者的个人资料,删除读者信息,输出读者信息等功能。
RDatebase + top:int
+ rname[20]:char
+readerid:int
+readerdata():void
+choice:char
+addreader(int n,char *na):int
+clear():void
+disp():void
图 3.2
3.3 图书类的设计
图书类,可以实现对图书的描述,图书的编号,书名,借出,还入等操作。
Book +no:int
+name[20]:char
+onshelf:int
+getname():char
+getno():int
+gettag():int
+setname(char na[]):void
+delbook():void
+addbook():void
+borrowbook():int
+retbook():void
+disp ():void 图 3.3
3.4 图书库类的设计
Xingzhengrenyuan +top:int
+clear():void
+addbook(int n,char *na):int
+bookdata():void
+bookdata():void
+ disp():void 图 3.4
4.调试与测试:
4.1系统调试
在调试过程中,出现了一些错误。
1、输入数据时,输错了数据的类型会造成死循环,因此输入时需要注意。
2、一开始主界面输入非正确数字时,没有提示错误。容易造成用户误解
图4.1
在主函数的switch语句结束处加上default:cout输入错误,请从新输入:;就可以了,修改后:
图4.2
具体调试过程。
主界面
图4.3
图书维护
图4.4
读者维护
图4.1
5.结果分析
本程序总共设计了四个类,满足了课题对类的要求,在设计的过程中,建立了较为清晰的类层次,也利用了面向对象的方法以及C++的编程思想来完成系统的设计,做到了每个借阅者建立一个账户,账户中存储借阅者的个人信息、借阅信息等要求。而且界面美观,容易操作。但是程序太长,不够简练,导致出现错误很难发现和修改。
总结
感想和体会:
通过这次的课程设计,让我们充分的感觉到了要自己设计一个程序是多么的难,以及学习好c++是多么的重要。
在这个程序的设计过程中,我们清
显示全部