面向对象程序设计-图书管理系统设计_第1页
面向对象程序设计-图书管理系统设计_第2页
面向对象程序设计-图书管理系统设计_第3页
面向对象程序设计-图书管理系统设计_第4页
面向对象程序设计-图书管理系统设计_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

经典word整理文档,仅参考,双击此处可删除页眉页脚。本资料属于网络整理,如有侵权,请联系删除,谢谢!面向对象程序设计专题实验报告题班姓学目:图书管理系统设计级:名:号:摘要IAbstractwtahII目录第1章概述--------------------------------------------------------------11.1题目及要求--------------------------------------------------------11.2背景和意义--------------------------------------------------------11.3问题的解决方案----------------------------------------------------2第2章系统分析----------------------------------------------------------22.1系统的整体需求----------------------------------------------------22.2系统的功能需求----------------------------------------------------22.3系统功能总体设计--------------------------------------------------33.1系统的整体设计----------------------------------------------------33.2系统的主要模块设计------------------------------------------------4第4章系统实现----------------------------------------------------------6第5章结束语-----------------------------------------------------------11参考文献----------------------------------------------------------------12附录--------------------------------------------------------------------13III第1章概述1.1题目及要求1.2背景和意义11.3问题的解决方案第2章系统分析2.1系统的整体需求2.2系统的功能需求22.3系统功能总体设计I作者出版时间价格书名按ISBNSBN图1系统功能总框图第3章系统设计3.1系统的整体设计YNYNYNYNYN图233.2系统的主要模块设计a图3图44a图5YNNYYNNY图65a图7第4章系统实现16图811图97输出相应的提示信息和图案,然后调用函数(),显示出所有信息。图10按jj8图图9图5a图图第5章结束语参考文献附录#include<iostream>#include<cstdio>#include<stdlib.h>usingnamespacestd;#include<string>//cstdio是将stdio.h的内容用头文件的形式表示出来。//stdlib头文件即standardlibrary标准库头文件classbook{private:stringisbn;stringname;stringwriter;stringpublisher;stringtime;stringprice;public://书号//书名////出版社//出版时间//图书价格book(){}book(stringa,stringb,stringc,stringd,stringe,stringf){isbn=a;name=b;writer=c;publisher=d;time=e;price=f;}stringget_name(){returnname;}stringget_isbn(){returnisbn;}stringget_writer(){returnwriter;}stringget_publisher(){returnpublisher;}voiddisplay()//图书内容的显示{cout<<"-------------------------------"<<endl;cout<<"ISBN号:"<<isbn<<endl<<"书名:"<<name<<endl<<"作者:"<<writer<<endl<<"出版社:"<<publisher<<endl<<"出版时间:"<<time<<endl<<"价格:"<<price<<"元"<<endl;cout<<"-------------------------------"<<endl;}};classdatabase:publicbook//公有继承(public)的定义classB:publicA{<派生类新定义成员>};{private:bookshumu[100];intsum;public:database(){sum=0;}voidadd(booka){if(sum>=100){cout<<"添加失败,内存已满!"<<endl;}else{shumu[sum]=a;sum++;添加新书目成功,以下是本书信息"<<endl;}}voidrebookinfo(booka){intflag=0;if(sum=0){cout<<"修改失败,已经没有存档了!"<<endl;}else{for(inti=0;i<sum;i++){if(shumu[i].get_isbn()==a.get_isbn()){cout<<"修改书目成功,以下是修改的书信息"<<endl;//}shumu[i].display();break;}if(!flag){cout<<"该书籍不存在!"<<endl;}if(sum>=100){cout<<"添加失败,内存已满!"<<endl;}else{shumu[sum]=a;sum++;添加新书目成功,以下是本书信息"<<endl;}if(sum>=100){cout<<"添加失败,内存已满!"<<endl;}else{shumu[sum]=a;sum++;添加新书目成功,以下是本书信息"<<endl;}}}voiddelete_by_isbn(booka)//按编号删除{intflag=0;if(sum==0){cout<<"删除失败,已经没有存档了!"<<endl;}else{for(inti=0;i<sum;i++){if(shumu[i].get_isbn()==a.get_isbn()){删除书目成功,以下是删除的书信息"<<endl;shumu[i].display();for(intj=i;j<sum-1;j++){shumu[j]=shumu[j+1];}flag=1;sum--;break;}}if(!flag){cout<<"该书籍不存在!"<<endl;}}}voidsearch_by_name(stringnames)//按书名查找{intflag=0;for(inti=0;i<sum;i++){if(shumu[i].get_name()==names){shumu[i].display();flag=1;}}if(flag==0){cout<<"该书籍不存在!"<<endl;}}voidsearch_by_isbn(stringnames)//按书号查找{intflag=0;for(inti=0;i<sum;i++){if(shumu[i].get_isbn()==names){shumu[i].display();flag=1;}}if(flag==0){cout<<"该编号不存在!"<<endl;}}voidsearch_by_writer(stringnames)//按查找{intflag=0;for(inti=0;i<sum;i++){if(shumu[i].get_writer()==names){shumu[i].display();flag=1;}}if(flag==0){cout<<"该不存在!"<<endl;}}voidsearch_by_publisher(stringnames)//按出版社查找{intflag=0;for(inti=0;i<sum;i++){if(shumu[i].get_writer()==names){shumu[i].display();flag=1;}}if(flag==0){cout<<"该出版社不存在!"<<endl;}}voiddisplay_all()//显示全部信息{for(inti=0;i<sum;i++){shumu[i].display();}}voidread(){FILE*fp;if((fp=fopen("book.txt","rb+"))==NULL)//注意路径;rb+读写打开一个二进制文件,只允许读写数据。文件打开失败\n";system("PAUSE");exit(0);}fread(&sum,2,1,fp);//从一个文件中读数据;4:单个元素的大小,单位是字节;1:.元素个数,每次读取个元素;fp:提供数据的文件指针for(inti=0;i<sum;i++){fread(&shumu[i],sizeof(shumu[i]),1,fp);}fclose(fp);}voidwrite(){FILE*fp2;if((fp2=fopen("book.txt","wb+"))==NULL)//注意路径;wb+只写打开或新建一个二进制文件;只允许写数据。文件打开失败\n";system("PAUSE");exit(0);//exit(0)表示正常退出}fwrite(&sum,2,1,fp2);for(inti=0;i<sum;i++){fwrite(&shumu[i],sizeof(shumu[i]),1,fp2);}//sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间,用字节数表示。fputc('EOF',fp2);//将字符ch写到文件指针fp所指向的文件的当前写指针的位置;EOF是EndOfFile的缩写,表示“文件结束”。fclose(fp2);}};//主函数voidmain()databaseBook;{charfunction='0';Book.read();inti;//界面while(function!='6'){cout<<endl;cout<<"\t------------------------------------------------------------------\n";cout<<"\t\t\t\t欢迎使用图书管理系统"<<endl;cout<<"\t\t\t\t"<<endl;cout<<"\t\t\t\t请选择操作\n"<<endl;cout<<"\t\t\t\t1创建新书信息"<<endl;cout<<"\t\t\t\t2修改图书信息"<<endl;cout<<"\t\t\t\t3显示所有图书"<<endl;cout<<"\t\t\t\t4按指定条件查询书目"<<endl;cout<<"\t\t\t\t5按书号删除书目"<<endl;cout<<"\t\t\t\t6退出系统并保存修改"<<endl;cout<<"\t\t\t\t"<<endl;cout<<"\t\t\t(查询可按书号//书名查询)"<<endl;cout<<"\t-------------------------------------------------------------------\n";cin>>function;//图书书号、书名、、出版社、出版时间、价格信息的录入换码符'\t',表示水平制表位(horizeontaltab),它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。换句话说,让所有的数据都紧跟在制表符后面输出。//换码符表示水平制表位,它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。换句话说,让所有的数据都紧跟在制表符后面输出。if(function=='1'){stringa,b,c,d,e,f;cout<<"请输入书的isbn编号"<<endl;cin>>a;//定义字符串cout<<"请输入书名"<<endl;cin>>b;cout<<"请输入书名"<<endl;cin>>c;cout<<"请输入书的出版社"<<endl;cin>>d;cout<<"请输入书的出版时间"<<endl;cin>>e;cout<<"请输入书的价格"<<endl;cin>>f;booknewbook(a,b,c,d,e,f);Book.add(newbook);newbook.display();system("PAUSE");system("CLS");}elseif(function=='2'){stringa,b,c,d,e,f;//定义字符串cout<<"请输入需要修改的图书的编号:"<<endl;cin>>a;cout<<"请输入书的isbn编号"<<endl;cin>>a;cout<<"请输入书名"<<endl;cin>>b;cout<<"请输入书名"<<endl;cin>>c;cout<<"请输入书的出版社"<<endl;cin>>d;cout<<"请输入书的出版时间"<<endl;cin>>e;cout<<"请输入书的价格"<<endl;cin>>f;booknewbook(a,b,c,d,e,f);Book.rebookinfo(newbook);//newbook.display();system("PAUSE");system("CLS");}//显示所有图书信息elseif(function=='3'){cout<<"这是所有藏书:"<<endl;Book.display_all();system("PAUSE");system("CLS");}//按条件查询图书,输入按书号查询,输入按书名查询,输入按查询elseif(function=='4'){请选择查询方式"<<endl;cout<<"1按ISBN查询"<<endl;cout<<"2按书名查询"<<endl;cout<<"3按查询"<<endl;cout<<"4按出版社查询"<<endl;charj;stringsearch;cin>>j;if(j=='1'){请输入ISBN号"<<endl;cin>>search;//按书号查询以下是查询结果"<<endl;Book.search_by_isbn(search);按书号查询图书信息函数的调用system("PAUSE");system("CLS");}elseif(j=='2'){请输入书名"<<endl;//按书名查询cin>>search;以下是查询结果"<<endl;Book.search_by_name(search);//按书名查询图书信息函数的调用system("PAUSE");system("CLS");}elseif(j=='3')//按查询{请输入名"<<endl;cin>>search;以下是查询结果"<<endl;Book.search_by_writer(search);//

温馨提示

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

评论

0/150

提交评论