欢迎来到天天文库
浏览记录
ID:52634372
大小:37.50 KB
页数:12页
时间:2020-03-29
《图书馆管理系统源程序.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、#include#include#include#include#include#include#include//输入/输出文件流类usingnamespacestd;constintMaxr=100;//最多的读者constintMaxb=100;//最多的图书constintMaxbor=5;//每位读者最多借五本书//读者类,实现对读者的信息的描述classReader{private:inttag;//删
2、除标记1:已删0:未删intno;//读者编号charname[10];//读者姓名intborbook[Maxbor];//所借图书public:Reader(){}char*getname(){returnname;}//获取姓名intgettag(){returntag;}//获取删除标记intgetno(){returnno;}//获取读者编号voidsetname(charna[])//设置姓名{strcpy(name,na);}voiddelbook(){tag=1;}//设置删除标记1:已删0:未删voidaddreader(
3、intn,char*na)//增加读者{tag=0;no=n;strcpy(name,na);for(inti=0;i4、]=0;return1;}}return0;}voiddisp()//读出读者信息{cout<5、";cout<<"]"<6、ead[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()//删除所有读者信息{top=-1;}intaddreader(intn,ch7、ar*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];}returnNULL;}voiddisp()//输出所有读者信息{for(inti=0;i<=top8、;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(read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrna9、me[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt
4、]=0;return1;}}return0;}voiddisp()//读出读者信息{cout<5、";cout<<"]"<6、ead[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()//删除所有读者信息{top=-1;}intaddreader(intn,ch7、ar*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];}returnNULL;}voiddisp()//输出所有读者信息{for(inti=0;i<=top8、;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(read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrna9、me[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt
5、";cout<<"]"<6、ead[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()//删除所有读者信息{top=-1;}intaddreader(intn,ch7、ar*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];}returnNULL;}voiddisp()//输出所有读者信息{for(inti=0;i<=top8、;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(read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrna9、me[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt
6、ead[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()//删除所有读者信息{top=-1;}intaddreader(intn,ch
7、ar*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];}returnNULL;}voiddisp()//输出所有读者信息{for(inti=0;i<=top
8、;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(read[i]));file.close();}};voidRDatabase::readerdata(){charchoice;charrna
9、me[20];intreaderid;Reader*r;while(choice!='0'){cout<<"ttt读者维护tt1新增tt
此文档下载收益归作者所有