

下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、專業(yè).專注/ tushugua nli.cpp : Defines the entry point for the con sole applicati on.#in elude #i nclude #in clude /using n amespace std; const int BMAX=50;/圖書數(shù)據(jù)庫類 class bdatabasepublic:book btarrayBMAX;int top;public:bdatabase()book b;top=-1;fstream file(book.txt,ios:i n);while (1)/打開文件專業(yè).專注file.read(ch
2、ar *)&b,sizeof(b);if (!file) break;top+;btarraytop = b;file.close();/ 關閉文件bdatabase()/ 析構函數(shù),文件中fstream file(book.txt,ios:out);for (int i=0;i=top;i+)if (btarrayi.b_del=1)file.write(char *)&btarrayi,sizeof(btarrayi);file.close();專業(yè).專注void addbooks()將 btarray寫到 book.txt/往圖書數(shù)據(jù)庫中加圖專業(yè).專注book bk;in
3、t no;char bn ame20;cout請輸入書號:;cinno;coutendl請輸入書名:;cinbn ame;coute ndl;bk.b_flag=1;bk.addbook (no, bn ame);top+;btarraytop=bk;return;int findbooks(int suffix)/查找圖書,這個函數(shù)用于借書這書操作是數(shù)組下標int no;,suffix專業(yè).專注cout請輸入書號:;專業(yè).專注cinno;for(i nt i=0; i=top; i+)if(btarrayi. no=no & btarrayi.b_del=1)return i;ret
4、urn -1;int findbooks()/查找圖書,這個函數(shù)用于圖書int no;char value6;cout請輸入書號:;cinno;for(i nt i=0; i=top; i+)維護專業(yè).專注if(btarrayi. no=no & btarrayi.b_del=1)if(btarrayi.b_flag=1) strcpy(value,在架”);if(btarrayi.b_flag=2) strcpy(value,借出);cout 書號:btarrayi. no書的名稱btarrayi. name圖書狀態(tài):valuee ndl;return i;return -1;voi
5、d editbooks()/ 編輯圖書int cur;cur = fin dbooks();if (cur=-1) cout沒有這本書endl;return;cout 書 號:btarraycur. no書 的 名 稱專業(yè).專注btarraycur .n amee ndl;cout請修改數(shù)據(jù):endl;coutendl btarraycur. name;return ;void delbooks()/ 刪除圖書int cur;cur = fin dbooks();if (cur=-1)return;if(btarraycur.b_flag=2)/ 刪除時判斷圖書是否借出cout該圖書已經(jīng)借出,
6、請在歸還后再刪除。endl;return;專業(yè).專注btarraycur.b_del=2;return;void listbooks()書char value6;for(i nt i=0; i=top; i+)if(btarrayi.b_del=1)if(btarrayi.b_flag=1) strcpy(value,在架);if(btarrayi.b_flag=2) strcpy(value,借出);cout 書號:btarrayi. no書的名稱btarrayi. name 圖書狀態(tài):valuee ndl; return; class book/顯示全部圖專業(yè).專注public:專業(yè).專注
7、int no;char n ame20;int b_flag;int b_del;public :book()void set no(i nt n)no=n;int get no()return no;/返回圖書編號值void set name(char n a)strcpy(name, na);/ 字符串復制char* get name()return name; /返回圖書名稱圖書編號/圖書名稱專業(yè).專注void borbook()b_flag=2;借書標志void delbook()b_del=2; /刪除標志void addbook(i nt no ,char n a)set no(n
8、o);set name( na);b_flag=1;b_del=1;/讀者類 class readerpublic: int no;char n ame20;int r_del;1 存在,2 刪除/增加圖書功能專業(yè).專注int r_bor;1 借過書,2 沒有借書book brbook;public:void addreader(i nt id, char na)增加讀者no = id;strcpy (n ame, n a);r_del=1;void setbrbook(book bt)/ 設置借書標記brbook = bt;book getbrbook()return brbook; /返回
9、借書信息;/讀者數(shù)據(jù)庫類classdatabase專業(yè).專注public:reader rdarrayBMAX;int top;public:rdatabase()reader rd;top=_1;fstream file(reader.txt,ios:in); /while (1)file.read(char *)&rd,sizeof(rd);if (!file) break;top+;rdarraytop=rd;file.close(); / 關閉文件rdatabase() 析構函數(shù)打開文件專業(yè).專注fstream file(reader.txt,ios:out);for (int
10、 i=0;i=top;i+)if (rdarrayi.r_del=1)file.write(char *)&rdarrayi,sizeof(rdarrayi);file.close();void addreaders()reader rd;int no;char rn ame20;cout請輸入學號:;cinno;coutendl請輸入姓名:cinrn ame;/添加讀者專業(yè).專注coute ndl;rd.addreader( no, rn ame);rd.r_bor=2;top+;rdarraytop=rd;return;int fin dreaders。ntsuffix) /查找讀
11、者,這個函數(shù)用于借書還書操作suffix 是數(shù)組下標int no;cout請輸入學號:;cinno;for(i nt i=0; i=top; i+)if(rdarrayi. no=no & rdarrayi.r_del=1)return i;return -1;參數(shù)專業(yè).專注int findreaders()者維護操作int no;char value3;cout請輸入學號:;cinno;for(i nt i=0; i=top; i+)if(rdarrayi. no=no & rdarrayi.r_del=1) if(rdarrayi.r_bor=1) strcpy(value
12、,if(rdarrayi.r_bor=2) strcpy(value,cout學號:rdarrayi.no 是否借書:valueendl;return i;return -1;void editreaders()/查找讀者,這個函數(shù)用于讀借);無);姓名:/編輯讀者專業(yè).專注int cur;cur = fin dreaders();信息int cur;cur = fin dreaders();if (cur=-1) cout沒有該學生endl; return;cout請修改數(shù)據(jù):endl;coutendl rdarraycur .n ame;return ;void書
13、后才能刪除delreaders()II刪除讀者, 讀者如果借書要還專業(yè).專注if (cur=-1)return;是否借書 :valuee ndl;專業(yè).專注if(rdarraycur.r_bor=1)cout該用戶借了圖書,請還書后再刪除endl;return;rdarraycur.r_del=2;return;void listreaders()/ 顯示char value3;for(i nt i=0; i=top; i+)if(rdarrayi.r_del=1)if(rdarrayi.r_bor=1) strcpy(value,if(rdarrayi.r_bor=2) strcpy(val
14、ue,cout學號:rdarrayi.no所有讀者借);無);姓名:cout|e ndl;專業(yè).專注 return;void bookjiemain()護子菜單cout|- |e ndl;cout|圖書維護|endl;cout|(1)增加endl;cout|更改endl;cout|刪除endl;cout|查找endl;cout|顯示endl;cout|(6)返回上一層endl;/圖書維cout*借書*e ndl;專業(yè).專注void readerjiemian()維護子菜單cout|-|”e ndl;cout|讀者維護|endl;cout|(1)增 加endl;cout
15、|更 改endl;cout|刪 除endl;cout|查 找endl;cout|(5)顯示endl;cout|(6)返回上一層endl;cout|-|e ndl;/主界面cout*圖書管理系統(tǒng)*endl;cout*e ndl;voidmainjiemian()/讀者cout*endl;專業(yè).專注cout*e ndl;cout*(2)還書*e ndl;cout*e ndl;cout*(3)圖書管理*e ndl;cout*e ndl;cout*(4)用戶管理*e ndl;cout*e ndl;cout*(0)退出*e ndl;void borrowtoretur n( char br)/借書還書函
16、數(shù)參數(shù) br 用來判斷是 借書”還是 還書”1 為借書”,2 為 還書int rdid=0;int bkid=0;int rsuffix, bsuffix;bdatabase t_bd;rdatabase t_rd;if(br=1)/ 借書rsuffix=t_rd.fi ndreaders(rdid);cout*endl;bsuffix=t_bd.fi ndbooks(bkid);專業(yè).專注if (rsuffix=-1 | bsuffix=-1)return;if(t_bd.btarraybsuffix.b_flag=2)cout圖書已經(jīng)借出,請選擇其它圖書endl; return;if(t_
17、rd.rdarrayrsuffix.r_bor=1)cout你已經(jīng)借過圖書,請先歸還再借其它圖書return;t_bd.btarraybsuffix.b_flag=2;t_rd.rdarrayrsuffix.r_bor=1;t_rd.rdarrayrsuffix.brbook=t_bd.btarraybsuffix;return;if(br=2)rsuffix=t_rd.fi ndreaders(rdid);endl;bsuffix=t_bd.fi ndbooks(bkid);專業(yè).專注if (rsuffix=-1 | bsuffix=-1 )return; if(t_rd.rdarrayrs
18、uffix.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請重新輸入,讀者借的圖書號不正確 i n;switch (in)case 1:bd.addbooks(); break;case 2:bd.editbooks(); break;case 3:bd.delbooks(); break;case 4:bd.fi ndbooks(); break;case 5:bd.listbooks(); break;case 6:break;default:cout 輸入錯誤,請從新輸入。” i n;switch (in)case 1:bd.addreaders();break;case 2:bd.editreaders();break;case 3:bd.delreaders();break;case 4:bd.fi ndread
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中小微企業(yè)供應鏈金融創(chuàng)新政策效應分析報告
- 海口經(jīng)濟學院《工程項目認知實踐》2023-2024學年第一學期期末試卷
- 2025年制造業(yè)數(shù)字化轉(zhuǎn)型數(shù)據(jù)治理與數(shù)字化制造工藝優(yōu)化研究報告
- 模型參數(shù)優(yōu)化研究-洞察及研究
- 江陽城建職業(yè)學院《物流管理前沿》2023-2024學年第一學期期末試卷
- 湖北醫(yī)藥學院《高級日語》2023-2024學年第一學期期末試卷
- 廈門城市職業(yè)學院《中國近現(xiàn)代音樂文化簡史》2023-2024學年第一學期期末試卷
- 北京建筑大學《高等代數(shù)(I)》2023-2024學年第一學期期末試卷
- 跨平臺APP安全分析-洞察及研究
- 2025年制造業(yè)供應鏈數(shù)字化協(xié)同管理數(shù)據(jù)安全與隱私保護研究報告
- 中醫(yī)養(yǎng)生康復學
- GB/T 45150-2024老齡化社會認知癥包容性社群框架
- 華師版 八年級數(shù)學下冊 第二學期 期末綜合測試卷(2025年春)
- 2022年全國森林、草原、濕地調(diào)查監(jiān)測技術規(guī)程-附錄
- 2025年廣州市荔灣區(qū)招考社區(qū)居委會專職工作人員招考高頻重點提升(共500題)附帶答案詳解
- 2025年春新北師大版數(shù)學一年級下冊課件 綜合實踐 設計教室裝飾圖
- 如何做好臨床護生的帶教
- 森林防火工程技術標準
- 2025年全國普通話水平測試題標準試卷(共三十五套)
- 2025年全國保密知識競賽經(jīng)典試題庫及答案(共270題)
- 體育賽事輿情處理及應對方案
評論
0/150
提交評論