c++课程设计及——图书管理系统窗口界面_第1页
c++课程设计及——图书管理系统窗口界面_第2页
c++课程设计及——图书管理系统窗口界面_第3页
c++课程设计及——图书管理系统窗口界面_第4页
c++课程设计及——图书管理系统窗口界面_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C+课程设计课程设计系部:计算机应用技术系 专业:计算机应用技术 班级学号:姓名:一、系统功能分析:图书治理系统设计说明报告:图书馆作为学生学习知识的重要场所,作为信息资源的集散地,图书馆和用户借阅资料繁 多,包含很多的信息数据的治理.介于这一现象,我们对于图书馆的借阅治理系统进行了全面 的分析处理,在信息高速开展的今天,促进图书馆治理运用网络技术,通过信息系统的开发, 在图书馆之间互通有无,有利于提升图书的利用率.我的系统针对的是图书治理,面对大量纷繁复杂的图书治理工作,和不同图书的借出和归 还,需要设计一个合理的系统,它应包括图书库,读者库,和图书的借还书信息建立网上电子 图书治理系统的目

2、的是实现无纸化图书治理,减轻治理员的工作量,对过时、损失的图书进行删除,到达降低本钱提升工作效率的目标.我的系统设计还有很多的缺点和缺乏,在以后的时间里要不断的完善,修改.希望老师能够指出我的不 足,使其能够真正的,更好的应用在人们的生活中.二、系统设计:设计了四个类,Reader (读者类),Rdatabase (读者库类),Book (图书类)和Bdatabase (图 书库类),读者类主要用于存储信息,其中包括读者的根本属性int tag删除标记1 :已删,0:未删 int no;读者编号 char name10; 读者姓名 int borbookMaxbor;所借图书;char*get

3、name()获取姓名int gettag() 获取删除标记int getno()获取读者编号voidsetname(char na) 设置姓名 void delbook() 设置删除标记 void addreader(int n,char Reader()Char *getname()Int gettag()Int getno()Void setname(char na)Void delreader()Void addreader(int n,char na)Void borrowbook(int bookid) Int retbook(int bookid)Void disp()na) 增加

4、读者 void borrowbook(int bookid)借书操作 int retbook(int bookid)还书操作 voiddisp() 输出读者信息;读者库类包括:int top;读者记录指针Reader readMaxr;读者记录RDatabase()构造函数,将reader.txt 读到read口中void clear()删除所有读者信息intaddreader (int n,char *na) 添加读者时先查找是否存在 Reader *query(int readerid) 按编 号查找void disp()输出所有读者信息 void readerdata(); 读者库维护R

5、Database()析构函数,将read写入reader.txt 文件中图书类包括:int tag;删除标记1 :已删0 :未删int no;图书编号char name20;书 名 int onshelf; 是否在架 1 :在架 0 :已借 char *getname() return name;获得书名 int getno() return no;获得书编号 int gettag() return tag;获得删除标记 voidsetname(char na) 设置书名 void delbook() 删除图书 void addbook(int n,char *na) 增加 图书int bor

6、rowbook() 借书操作void retbook()还书操作void disp() 输出图书图书库类包括:int top;图书记录指针 Book bookMaxb; 图书记录BDatabase()构造函数,将book.txt读到 book口 中 void clear() 全删 int addbook(int n,char *na)增加图书 Book *query(intbookid)查找图书void bookdata(); 图书库维护Bdatabase析构函数,将book口写入book.txt 文件中Reader( 读者类)Int tagInt noChar name10Int borbo

7、okmaxbor三、代Book图书类Int tagInt noChar name20Int oneselfBook()Char *getname()Int getno()Int gettag()Void setname(char na)Void delbook()Void addbook(int n,char *na)Void borrowbook()Int retbook()Void disp()Rdatabase (读者库类)Int topReader readmaxrBdatabase(图书库类)IntRdptabase()Eookid»ooikar(axbInt addrea

8、der(int n,charEDbaseOVoReaearOqueryOnt readerid)Intvddbook()nt n,char *na)ovo*q翻e岫aokVowata(base() Void bookdata() BDatabase()码编写:#include <iostream.h>#include <iomanip.h>#include <string.h>#include <fstream.h> const int Maxr=100;const int Maxb=100;const int Maxbor=5;class Re

9、ader(int tag;int no;char name10;int borbookMaxbor;public:Reader() char *getname() return name; int gettag() return tag;int getno() return no;void setname(char na)strcpy(name,na);void delbook()tag=1;void addreader(int n,char *na)tag=0;no=n;strcpy(name,na);for (int i=0;i<Maxbor;i+) borbooki=0;void

10、borrowbook(int bookid)for (int i=0;i<Maxbor;i+) if (borbooki=0) borbooki=bookid; return;int retbook(int bookid)for (int i=0;i<Maxbor;i+) if (borbooki=bookid) borbooki=0;return 1;return 0;void disp()cout<<setw(5)<<no<<setw(10)<<name<<"借书编号:"for (int i=0;i

11、<Maxbor;i+)if (borbooki!=0)cout<<borbooki<<"|"cout<<""<<endl;class RDatabaseint top;Reader readMaxr;public:RDatabase()Reader s;top=-1;fstream file("reader.txt",ios:in);while (1) (char *)&s,sizeof(s);if (!file) break;top+;readtop=s;)();)voi

12、d clear()(top=-1;)int addreader (int n,char *na)(Reader *p=query(n);if (p=NULL)(top+;readtop.addreader(n,na);return 1;)return 0;)Reader *query(int readerid)(for (int i=0;i<=top;i+)if (readi.getno()=readerid && readi.gettag()=0) return &readi;return NULL;)void disp()(for (int i=0;i<

13、=top;i+)(if (readi.gettag()=0)readi.disp();)void readerdata();RDatabase()(fstream file("reader.txt",ios二out);for (int i=0;i<=top;i+)if (readi.gettag()=0)();(char *)&readi,sizeof(readi);)void RDatabase:readerdata()(int choice=1;char rname20;int readerid;Reader *r;while(choice!=0)(if

14、(choice!=0)(cout<<"读者维护"<<endl<<"1 :新增2 :更改3 :删除4 :查找5 :显示6 :全删0 : 退出=>"cin>>choice;if(choice=0)continue;if(choice=1) (cout<<"输入读者编号:"cin>>readerid;cout<<"输入读者姓名:"cin>>rname;addreader(readerid,rname);elseif(ch

15、oice=2)(cout<<"输入读者编号:"cin>>readerid;r=query(readerid); if (r=NULL) (cout<<"该读者不存在"<<endl;continue;cout<<"输入新的姓名:"cin>>rname;r->setname(rname);else if(choice=3)(cout<<"输入读者编号:"cin>>readerid;r=query(readerid);

16、if (r=NULL) (cout<<"该读者不存在"<<endl;continue;r->delbook();) elseif(choice=4)(cout<<"输入读者编号:"cin>>readerid;r=query(readerid);if (r=NULL) (cout<<"该读者不存在"<<endl;continue;)r->disp();)elseif(choice=5)disp();elseif(choice=6)clear();else

17、cout<<"您的输入有误! ! !请重新输入:"<<endl;)class Book(int tag;int no;char name20;int onshelf;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)tag=0;no=n;strcpy (nam

18、e,na);onshelf=1;int borrowbook()(if (onshelf=1)(onshelf=0;return 1;)return 0;)void retbook()(onshelf=1;)void disp()(cout<<setw(6)<<no<<setw(18)<<name<<setw(10)<<(onshelf=1? "在 架":" 已 借 ")<<endl;);class BDatabase(int top;Book bookMaxb;publ

19、ic:BDatabase()(Book b;top=-1;fstream file("book.txt",ios:in);while (1)(char*)&b,sizeof(b);if (!file) break;top+;booktop=b;)();)void clear()(top=-1;)int addbook(int n,char *na)(Book *p=query(n);if (p=NULL)(top+;booktop.addbook(n,na);return 1;return 0;Book *query(int bookid)(for (int i=0

20、;i<=top;i+)if (booki.getno()=bookid && booki.gettag()=0) return &booki;return NULL;void bookdata();void disp()(for (int i=0;i<=top;i+)(if (booki.gettag()=0)booki.disp();BDatabase()(fstream file("book.txt",ios二out);for (int i=0;i<=top;i+)if (booki.gettag()=0)(char*)&

21、;booki,sizeof(booki);();void BDatabase二bookdata()(int choice=1;char bname40;int bookid;Book *b;while(choice!=0)(if (choice!=0)(cout<<"图书维护"<<endl<<" 1:新增2 :更改3 :删除4 :查找5 :显示6 :全删0 :退出=>cin>>choice;if(choice=0)continue;if (choice=1)(cout<<"输入图书编号:&

22、quot; cin>>bookid;cout<<"输入图书书名:" cin>>bname;addbook(bookid,bname);elseif (choice=2)(cout<<"输入图书编号:" cin>>bookid;b=query(bookid);if (b=NULL)(cout<<"该图书不存在 continue;cout<<"输入新的书名:"cin>>bname;b->setname(bname);elseif

23、 (choice=3)(cout<<"输入图书编号:" cin>>bookid;b=query(bookid);if (b=NULL)(cout<<"该图书不存在 continue;b->delbook();elseif (choice=4)(cout<<"输入图书编号:" cin>>bookid;b=query(bookid);if (b=NULL)(cout<<"该图书不存在 continue;<<endl;<<endl;<&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论