1、tushuguanli.cpp:Definestheentrypointfortheconsoleapplication.#include 2、ead(char*)&b,sizeof(b);if(!file)break;top+;btarraytop=b;file.close();/关闭文件bdatabase()/析构函数,将btarray口写至Ubook.txt文件中fstreamfile("book.txt",ios:out);for(inti=0;i<=top;i+)if(btarrayi.b_del=1)file.write(char*)&btarrayi,sizeof(btarrayi);file.close();voidaddbooks()/往图书数据库中加图书bookbk;int 3、no;charbname20;cout<<"请输入书号:"cin>>no;cout< 4、inti=0;i<=top;i+)if(btarrayi.no=no&&btarrayi.b_del=1)returni;return-1;intfindbooks()/查找图书,这个函数用于图书维护intno;charvalue6;cout<<"请输入书号:"cin>>no;for(inti=0;i<=top;i+)if(btarrayi.no=no&&btarrayi.b_del=1)if(btarrayi.b_flag=1)strcpy(value,"在架");if(btarray 5、i.b_flag=2)strcpy(value,"借出"力cout<<"书号:"< 6、out<<"书号:"< 7、时判断图书是否借出cout<<"该图书已经借出,请在归还后再删除。"< 8、lt;endl;cout<<"书号:"< 9、r*getname()returnname;/返回图书名称voidborbook()b_flag=2;/借书标志voiddelbook()b_del=2;/删除标志voidaddbook(intno,charna)/增力口图书功能setno(no);setname(na);b_flag=1;b_del=1;;读者关classreaderpublic:intno;charname20;intr_del;/1存在,2删除intr_bor;/1借过书,2没有借书bookbrbook;public:voidaddreader(intid,charna口)增加读者no=id;strcpy(name,na 10、);r_del=1;voidsetbrbook(bookbt)/设置借书标记brbook=bt;bookgetbrbook()returnbrbook;/返回借书信息;/读者数据库类classdatabasepublic:readerrdarrayBMAX;inttop;public:rdatabase()readerrd;top=-1;fstreamfile("reader.txt",ios:in);/打开文件whilefile.read(char*)&rd,sizeof(rd);if(!file)break;top+;rdarraytop=rd;file.clo 11、se();/关闭文件rdatabase()析构函数fstreamfile("reader.txt",ios:out);for(inti=0;i<=top;i+)if(rdarrayi.r_del=1)file.write(char*)&rdarrayi,sizeof(rdarrayi);file.close();/添加读voidaddreaders()者readerrd;intno;charrname20;cout<<"请输入学号:"cin>>no;cout< 12、名:"cin>>rname;cout< 13、函数用于读借)无)姓名:"<<<<"intfindreaders()者维护操作intno;charvalue3;cout<<"请输入学号:"cin>>no;for(inti=0;i<=top;i+)if(rdarrayi.no=no&&rdarrayi.r_del=1)if(rdarrayi.r_bor=1)strcpy(value,"if(rdarrayi.r_bor=2)strcpy(value,"cout<<"学 14、号:"< 15、;return;void还书后才能删除delreaders()/删除读者,读者如果借书要void所有读者intcur;cur=findreaders();if(cur=-1)return;if(rdarraycur.r_bor=1)cout<<"该用户借了图书,请还书后再删除return;rdarraycur.r_del=2;return;listreaders()charvalue3;for(inti=0;i<=top;i+)if(rdarrayi.r_del=1)if(rdarrayi.r_bor=1)strcpy(value," 16、;if(rdarrayi.r_bor=2)strcpy(value,"cout<<"学号:"< 17、维护|"< 18、quot;< 19、ut<<"|显示|"< 20、lt;endl;cout<<"*"< 22、-1|bsuffix=-1)return;if(t_bd.btarraybsuffix.b_flag=2)cout<<"图书已经借出,请选择其它图书"<
图书馆管理系统C++代码
THE END