图书管理系统课程设计报告

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

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

1、C+课程设计课程设计报告设计题目 图书管理系统 专 业 计算机科学与技术 班 级 090601 姓 名 祝龙波 学 号 090601120 2010 年 8月 25 日共 19 页 2 页 2面向对象技术与 C+课程设计任务书课 程 面向对象技术与 C+ 班级 2009 级 7-8 班 指导教师 耿军雪题 目 图书管理系统 完成时间 2010 年 06 月 21 日至 2010 年 06 月 25 日主要内容1问题描述建立一个图书馆管理系统,可以处理以下对象: 图书馆基本信息。 图书馆的书籍。 图书馆管理员 。 读者信息。2程序要求,程序要完成下列功能 查询图书馆的总信息。 查询图书馆管理员的

2、信息。 查询图书馆藏书信息。 存入新书(有管理员加入,需进行身份验证)。 旧书处理。 存入新的管理员的信息。 修改管理员信息(增加工龄,加薪)。 两所图书馆的最大藏书量之和。 根据书名检索书刊信息。 查询读者的借阅信息。 查询读者信息(包括借书情况、到期时间、罚款情况。)。 管理员可以修改用户的欠款和交款的金额。 读者分为学生、研究生和教师。学生的租期为 1 个月,教师的租期为 2 个月。3程序设计说明 使用链表实现。 使用文件保存书籍信息。设计报告要求1封面:(格式附后)2课程设计任务书3课程设计报告: 系统总体方案 设 计 思 路 和 主 要 步 骤 各功能模块和流程图 设计代码 心得体会

3、和参考资料说明:学生完成课程设计后,提交课程设计报告及软件,要求文字通畅、字迹工整(也可用以打印),文字不少于 5000 字,并装订成册。共 19 页 3 页 3目 录1.设计目标2.设计思想3.类及对象设计4.程序源代码5.心得体会6.参考资料共 19 页 4 页 4图书管理系统1设计目标设计一个小型的图书管理系统,用链表来存储读者的基本信息(包括姓名、读者编号、读者借书情况等) ,完成借书、还书、图书维护、读者维护、离开等功能。2设计思想(1) 设计 class Reader 读者信息库,实现对读者信息的描叙; class RDatabase 读者类库实现建立读者的个人资料;class m

4、agdatabase 管理员库类;class manager 管理员类;class Book 图书类,实现对图书的描述,图书的编号,书名,借出,还入等;class BDatabase 图书库类,实现对图书的维护,查找,删除等。以下是函数功能表: 函数 功能char *getname() 获取姓名int gettag() 获取删除标记int getno() 获取读者编号void setname(char na) 设置姓名以及编号void addreader(int n,char *na) 增加读者void delbook() 设置删除标记void borrowbook(int bookid) 借

5、书操作int retbook(int bookid) 还书操作共 19 页 5 页 5void disp() 读出读者信息BDatabase() 构造函数,将 book.txt 读到 book中int addbook(int n,char *na) 增加图书Book *query(int bookid) 查找图书void delbook 删除图书void bookdata() 图书库维护BDatabase() 析构函数,将 book写到 book.txt 文件(2)用类的成员函数对链表的数据进行操作,其功能如上表所列。(3)设计菜单来实现功能设计3设计类及对象(1) 本程序定义了六个类,定义如

6、下:#include#include bdatabase.h#include#include#includeconst int maxr=100;/最多的读者const int maxb=100;/最多的图书const int maxbor=5;/每位读者最多借 5 本书class reader /读者类int tag; /删除标记 1:已删 0:未删int no; /读者编号char name20; /读者姓名char position20; /职务int borbookmaxbor; /所借图书int zq; /租期public:int t; /交款和欠款标记 1:由管理员设置 2:全设为

7、 0char bday10; /所借日期char rday10; /所还日期int jmoney; /欠款int qmoney; /交款reader( ) char *getname( )return name; /获取姓名int gettag( )return tag; /获取删除标记int getno( )return no; /获取读者编号void setname(char na ) /设置姓名共 19 页 6 页 6strcpy(name,na);void setjmoney(int jm) jmoney=jm;void setqmoney(int qm)qmoney=qm;void

8、sett(int tt) /设置交款和欠款标记t=tt;void setz(int z)zq=z;char * getbday( )return bday;char * getrday( )return rday;void delbook()tag=1;/设置删除标记void addreader(int n,char *na,char *po,int z);/增加读者int retbook(int bookid); /还书操作void borrowbook(int bookid); /借书操作void disp( ); /输出读者信息;class rdatabase /读者库类 int top

9、; /读者记录指针reader readmaxr;public:rdatabase();/构造函数,将 reader.txt 读到 read 中void clear( ) /删除所有读者信息top=-1;int addreader(int n,char *na,char *po,int z); /添加读者时先查找是否存在reader *query(int readerid)for(int i=0;i#include#include#include#includebook.h#includereader.h共 19 页 9 页 9class bdatabase /图书库类int top; /图书

10、记录指针book book1maxb; /图书记录public:bdatabase( ); /将 book.txt 读到 book中void clear( )top=-1; /全删int addbook(int n,char *na); /增加图书book * query(int bookid); /查找图书void bookdata( ); /图书库维护void disp( );bdatabase( );#include#include#include#include#includereader.hclass book /图书类int tag; /删除标记 1:已删 0:未删int no;

11、/编号char name20; /书名int onshelf; /是否在架 1:在架 0:已借public:book( ) char *getname( )return name; /获取书名int getno( )return no; /获取图书编号int gettag( )return tag; /获取删除标记void setname(char na ) /设置书名strcpy(name,na);void delbook( )tag=1; /删除图书void addbook(int n,char *na); /增加图书int borrowbook( ); /借书void retbook(

12、); /还书void disp( ); /输出图书;#include#include#include#include#includemanager.h共 19 页 10 页 10class magdatabase /管理员库类int top; /管理员记录指针manager managemaxm;public:magdatabase( ); /构造函数,将 manager.txt 读到 manager 中void clear( ) /删除所有管理员信息top=-1;int addmag(int n,char *na,int fe,int a,int m); /添加管理员时先查找是否存在mana

13、ger *query(int managerid)for(int i=0;i#include#include#includeconst int maxm=5;class manager /管理员类 int tag; /删除标记 1:已删 0:未删int no; /管理员工号char name20; /管理员姓名int fee; /工资int age; /工龄int ma; /密码public:manager( ) char *getname ()return name;/获取姓名int gettag( )return tag;/获取删除标记int getno( )return no;/获取管理

14、员工号int getage()return age;/获取管理员工龄int getma( )return ma;共 19 页 11 页 11void setname(char na )/设置姓名strcpy(name,na);void setfe(int fe)fee=fe;void setage(int ag)age=ag;void delbook()tag=1;/设置删除标记void addmag(int n,char *na,int fe,int a,int m);/增加管理员void disp();/输出管理员信息;#include#include#include#include#includereader.hclass rdatabase /读者库类 int top; /读者记录指针reader readmaxr;public:rdatabase();/构造函数,将 reader.txt 读到 read 中void clear( ) /删除所有读者信息top=-1;int addreader(int n,char *na,char *po,int z); /添加读者时先查找是否存在reader *query(int readerid)for(int i=0;i#include bdatabase.h#include#include#includecons

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

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

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