欢迎来到天天文库
浏览记录
ID:59169984
大小:16.94 KB
页数:9页
时间:2020-10-30
《图书管理系统-c语言程序设计.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#include//?????????????????#include#include#includeusingnamespacestd;constintMaxr=100;//最多的读者constintMaxb=100;//最多的图书constintMaxbor=5;//每位读者最多借五本书classReader{//读者类,实现对读者的信息的描述private:inttag;//删除标记1:已删
2、0:未删intno;//读者编号charname[10];//读者姓名intborbook[Maxbor];//所借图书public:Reader(){;}char*getname(){//获取姓名returnname;}intgettag(){//获取删除标记returntag;}intgetno(){//获取读者编号returnno;}voidsetname(charna[]){//设置姓名strcpy(name,na);}voiddelbook(){//设置删除标记1:已删0:未删tag=1;}
3、voidaddreader(intn,char*na){//增加读者tag=0;no=n;strcpy(name,na);for(inti=0;i4、){if(borbook[i]==bookid){borbook[i]=0;return1;}}return0;}voiddisp(){//读出读者信息cout<5、";cout<<"]"<6、者记录指针Readerread[Maxr];//读者记录public:RDatabase(){//构造函数,将reader.txt读到read[]中Readers;top=-1;fstreamfile("reader.txt",ios::in);//打开一个输入文件while(1){file.read((char*)&s,sizeof(s));if(!file)break;top++;read[top]=s;}file.close();//关闭reader.txt}voidclear(){//删除所有7、读者信息top=-1;}intaddreader(intn,char*na){//添加读者时先查找是否存在Reader*p=query(n);if(p==NULL){top++;read[top].addreader(n,na);return1;}return0;}Reader*query(intreaderid){//按编号查找for(inti=0;i<=top;i++)if(read[i].getno()==readerid&&read[i].gettag()==0){return&read[i]8、;}returnNULL;}voiddisp(){//输出所有读者信息for(inti=0;i<=top;i++)read[i].disp();}voidreaderdata();//读者库维护~RDatabase(){//析构函数,将read[]写到reader.txt文件中fstreamfile("reader.txt",ios::out);for(inti=0;i<=top;i++)if(read[i].gettag()==0)file.write((char*)&read[i],sizeof(9、read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrname[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt2更改tt3删除tt4查找tt5显示tt6全删tt0退出"<
4、){if(borbook[i]==bookid){borbook[i]=0;return1;}}return0;}voiddisp(){//读出读者信息cout<5、";cout<<"]"<6、者记录指针Readerread[Maxr];//读者记录public:RDatabase(){//构造函数,将reader.txt读到read[]中Readers;top=-1;fstreamfile("reader.txt",ios::in);//打开一个输入文件while(1){file.read((char*)&s,sizeof(s));if(!file)break;top++;read[top]=s;}file.close();//关闭reader.txt}voidclear(){//删除所有7、读者信息top=-1;}intaddreader(intn,char*na){//添加读者时先查找是否存在Reader*p=query(n);if(p==NULL){top++;read[top].addreader(n,na);return1;}return0;}Reader*query(intreaderid){//按编号查找for(inti=0;i<=top;i++)if(read[i].getno()==readerid&&read[i].gettag()==0){return&read[i]8、;}returnNULL;}voiddisp(){//输出所有读者信息for(inti=0;i<=top;i++)read[i].disp();}voidreaderdata();//读者库维护~RDatabase(){//析构函数,将read[]写到reader.txt文件中fstreamfile("reader.txt",ios::out);for(inti=0;i<=top;i++)if(read[i].gettag()==0)file.write((char*)&read[i],sizeof(9、read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrname[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt2更改tt3删除tt4查找tt5显示tt6全删tt0退出"<
5、";cout<<"]"<6、者记录指针Readerread[Maxr];//读者记录public:RDatabase(){//构造函数,将reader.txt读到read[]中Readers;top=-1;fstreamfile("reader.txt",ios::in);//打开一个输入文件while(1){file.read((char*)&s,sizeof(s));if(!file)break;top++;read[top]=s;}file.close();//关闭reader.txt}voidclear(){//删除所有7、读者信息top=-1;}intaddreader(intn,char*na){//添加读者时先查找是否存在Reader*p=query(n);if(p==NULL){top++;read[top].addreader(n,na);return1;}return0;}Reader*query(intreaderid){//按编号查找for(inti=0;i<=top;i++)if(read[i].getno()==readerid&&read[i].gettag()==0){return&read[i]8、;}returnNULL;}voiddisp(){//输出所有读者信息for(inti=0;i<=top;i++)read[i].disp();}voidreaderdata();//读者库维护~RDatabase(){//析构函数,将read[]写到reader.txt文件中fstreamfile("reader.txt",ios::out);for(inti=0;i<=top;i++)if(read[i].gettag()==0)file.write((char*)&read[i],sizeof(9、read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrname[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt2更改tt3删除tt4查找tt5显示tt6全删tt0退出"<
6、者记录指针Readerread[Maxr];//读者记录public:RDatabase(){//构造函数,将reader.txt读到read[]中Readers;top=-1;fstreamfile("reader.txt",ios::in);//打开一个输入文件while(1){file.read((char*)&s,sizeof(s));if(!file)break;top++;read[top]=s;}file.close();//关闭reader.txt}voidclear(){//删除所有
7、读者信息top=-1;}intaddreader(intn,char*na){//添加读者时先查找是否存在Reader*p=query(n);if(p==NULL){top++;read[top].addreader(n,na);return1;}return0;}Reader*query(intreaderid){//按编号查找for(inti=0;i<=top;i++)if(read[i].getno()==readerid&&read[i].gettag()==0){return&read[i]
8、;}returnNULL;}voiddisp(){//输出所有读者信息for(inti=0;i<=top;i++)read[i].disp();}voidreaderdata();//读者库维护~RDatabase(){//析构函数,将read[]写到reader.txt文件中fstreamfile("reader.txt",ios::out);for(inti=0;i<=top;i++)if(read[i].gettag()==0)file.write((char*)&read[i],sizeof(
9、read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrname[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt2更改tt3删除tt4查找tt5显示tt6全删tt0退出"<
此文档下载收益归作者所有