圖書館管理系統(tǒng)C++代碼_第1頁
圖書館管理系統(tǒng)C++代碼_第2頁
圖書館管理系統(tǒng)C++代碼_第3頁
圖書館管理系統(tǒng)C++代碼_第4頁
圖書館管理系統(tǒng)C++代碼_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、tushuguanli.cpp:Definestheentrypointfortheconsoleapplication.#include<string>#include<fstream>#include<iostream/usingnamespacestd;constintBMAX=50;/圖書數(shù)據(jù)庫類classbdatabasepublic:bookbtarrayBMAX;inttop;public:bdatabase()bookb;top=-1;fstreamfile("book.txt",ios:in);/打開文件whilefile.r

2、ead(char*)&b,sizeof(b);if(!file)break;top+;btarraytop=b;file.close();/關(guān)閉文件bdatabase()/析構(gòu)函數(shù),將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()/往圖書數(shù)據(jù)庫中加圖書bookbk;int

3、no;charbname20;cout<<"請輸入書號:"cin>>no;cout<<endl<<"請輸入書名:"cin>>bname;cout<<endl;bk.b_flag=1;bk.addbook(no,bname);top+;btarraytop=bk;return;intfindbooks(intsuffix)查找圖書,這個函數(shù)用于借書這書操作,suffix是數(shù)組下標(biāo)intno;cout<<"請輸入書號:"cin>>no;for(

4、inti=0;i<=top;i+)if(btarrayi.no=no&&btarrayi.b_del=1)returni;return-1;intfindbooks()/查找圖書,這個函數(shù)用于圖書維護(hù)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<<"書號:"<<btarrayi.no<<"書的名稱"<<<<”圖書狀態(tài):"<<value<<endl;returni;return-1;/編輯圖書書的名稱voideditbooks()intcur;cur=findbooks();if(cur=-1)cout<<"沒有這本書"<<endl;return;c

6、out<<"書號:"<<btarraycur.no<<"<<<<endl;cout<<"請修改數(shù)據(jù):"<<endl;cout<<endl<<"書的名稱:"cin>>;return;voiddelbooks()/刪除圖書intcur;cur=findbooks();if(cur=-1)return;if(btarraycur.b_flag=2)/刪除

7、時判斷圖書是否借出cout<<"該圖書已經(jīng)借出,請在歸還后再刪除。"<<endl;return;btarraycur.b_del=2;return;/顯示全部圖voidlistbooks()charvalue6;for(inti=0;i<=top;i+)if(btarrayi.b_del=1)if(btarrayi.b_flag=1)strcpy(value,"在架");if(btarrayi.b_flag=2)strcpy(value,"借出"力圖書狀態(tài):"<<value<&

8、lt;endl;cout<<"書號:"<<btarrayi.no<<"書的名稱"<<<<"return;5class bookpublic:int no;char name20;int b_flag;int b_del;public :book()void setno(int n)no=n;int getno()return no;void setname(char na口)strcpy(name, na);返回圖書編號值/字符串復(fù)制/圖書編號/圖書名稱cha

9、r*getname()returnname;/返回圖書名稱voidborbook()b_flag=2;/借書標(biāo)志voiddelbook()b_del=2;/刪除標(biāo)志voidaddbook(intno,charna)/增力口圖書功能setno(no);setname(na);b_flag=1;b_del=1;;讀者關(guān)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)/設(shè)置借書標(biāo)記brbook=bt;bookgetbrbook()returnbrbook;/返回借書信息;/讀者數(shù)據(jù)庫類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();/關(guān)閉文件rdatabase()析構(gòu)函數(shù)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<<"請輸入學(xué)號:"cin>>no;cout<<endl<<"請輸入姓

12、名:"cin>>rname;cout<<endl;rd.addreader(no,rname);rd.r_bor=2;top+;rdarraytop=rd;return;intfindreaders(intsuffix)/查找讀者,這個函數(shù)用于借書還書操作。suffix是數(shù)組下標(biāo)intno;cout<<"請輸入學(xué)號:"cin>>no;for(inti=0;i<=top;i+)if(rdarrayi.no=no&&rdarrayi.r_del=1)returni;return-1;/查找讀者,這個

13、函數(shù)用于讀借)無)姓名:"<<<<"intfindreaders()者維護(hù)操作intno;charvalue3;cout<<"請輸入學(xué)號:"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<<"學(xué)

14、號:"<<rdarrayi.no<<"是否借書:"<<value<<endl;returni;return-1;w信息voideditreaders()/編輯讀者intcur;cur=findreaders();if(cur=-1)cout<<"沒有該學(xué)生"<<endl;return;cout<<"請修改數(shù)據(jù):"<<endl;cout<<endl<<"姓名:"cin>>rda

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<<"學(xué)號:"<<rdarrayi.no<<""<<endl;/顯示借)無)姓名:"<<<<"是否借書:"<<value<<endl;)return;)voidbookjiemain()護(hù)子菜單/圖書維cout<<"|"<<endl;cout<<"|圖書

17、維護(hù)|"<<endl;cout<<"|增加|"<<endl;cout<<"|(2)更改|"<<endl;cout<<"|刪除|"<<endl;cout<<"|(4)查找|"<<endl;cout<<"|顯示|"<<endl;cout<<"|(6)返回上一層|"<<endl;cout<<"|&

18、quot;<<endl;)voidreaderjiemian()者維護(hù)子菜單(/讀cout<<"|"<<endl;cout<<"|讀者維護(hù)|"<<endl;cout<<"|增加|"<<endl;cout<<"|(2)更改|"<<endl;cout<<"|刪除|"<<endl;cout<<"|(4)查找|"<<endl;co

19、ut<<"|顯示|"<<endl;cout<<"|(6)返回上一層|"<<endl;cout<<"|"<<endl;void/主界面mainjiemian()cout<<"I*"<<endl;cout<<"*圖書管理系統(tǒng)cout<<"*"<<endl;*"<<endl;cout<<"*借書*"<&

20、lt;endl;cout<<"*"<<endl;cout<<"*(2)還書*"<<endl;cout<<"*"<<endl;cout<<"*圖書管理*"<<endl;cout<<"*"<<endl;cout<<"*(4)用戶管理*"<<endl;cout<<"*"<<endl;cout<

21、;<"*(0)退出*"<<endl;cout<<"*"<<endl;voidborrowtoreturn(charbr)/借書還書函數(shù).參數(shù)br用來判斷是“借書”還是“還書”.1為“借書”,2為“還書”intrdid=0;intbkid=0;intrsuffix,bsuffix;bdatabaset_bd;databaset_rd;if(br='1')/借書rsuffix=t_rd.findreaders(rdid);bsuffix=t_bd.findbooks(bkid);if(rsuffix=

22、-1|bsuffix=-1)return;if(t_bd.btarraybsuffix.b_flag=2)cout<<"圖書已經(jīng)借出,請選擇其它圖書"<<endl;return;if(t_rd.rdarrayrsuffix.r_bor=1)cout<<"你已經(jīng)借過圖書,請先歸還再借其它圖書"<<endl;return;t_bd.btarraybsuffix.b_flag=2;t_rd.rdarrayrsuffix.r_bor=1;t_rd.rdarrayrsuffix.brbook=t_bd.btarray

23、bsuffix;return;if(br='2')rsuffix=t_rd.findreaders(rdid);bsuffix=t_bd.findbooks(bkid);if(rsuffix=-1|bsuffix=-1)return;if(t_rd.rdarrayrsuffix.brbook.no=t_bd.btarraybsuffix.no)t_bd.btarraybsuffix.b_flag=1;t_rd.rdarrayrsuffix.r_bor=2;t_rd.rdarrayrsuffix.brbook=t_bd.btarraybsuffix;elsecout<<

24、;"請重新輸入,讀者借的圖書號不正確"<<endl;return;return;voidbooksmange()charin;bdatabasebd;dobookjiemain();cin>>in;switch(in)case'1':bd.addbooks();break;case'2':bd.editbooks();break;case'3':bd.delbooks();break;case'4':bd.findbooks();break;case'5':bd.listbooks();break;case'6':brea

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論