




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、#includeiostream。hinclude<fstream.h>#include<iomanip.h>#includestring.h/using namespace std;const int Maxb=10000; /最多的圖書(shū)const int Maxr=100; /最多的讀者const int Maxbor=5; /每位讀者最多借
2、五本書(shū)/-class Book /圖書(shū)類(lèi) int tag; /刪除標(biāo)記 1:已刪 0:未刪 int no; /圖書(shū)編號(hào)
3、char name20; /書(shū)名 char author10; /作者名 char no210; /輸入分類(lèi)號(hào) char dan20; /輸入出版單位
4、60; char time20; /出版時(shí)間 int price; /價(jià)格 int onshelf; /是否在架1:在架0:已借pu
5、blic: Book() char *getname()return name; /獲取書(shū)名 int getno()return no; /獲取圖書(shū)編號(hào)
6、160; int gettag()return tag; /獲取刪除標(biāo)記 char getauthor()return author; /獲取作者名 char *getno2()return no2;
7、160; /獲取分類(lèi)號(hào) char *getdan()return dan; /獲取出版單位 char *gettime()return time; /獲取出版時(shí)間
8、60; int getprice()return price; /獲取圖書(shū)價(jià)格 void setname(char na)strcpy(name,na); /設(shè)置書(shū)名 void
9、160; setauthor(char au)strcpy(author,au); /設(shè)置作者名 void setno2(char n)strcpy(no2,n); /設(shè)置分類(lèi)號(hào) void setdan(char d)strcpy(dan,d);
10、60; /設(shè)置出版單位 void settime(char t)strcpy(time,t); /設(shè)置出版時(shí)間void setprice(int p)price=p; void delbook()tag=1;
11、0; /刪除圖書(shū) 1:已刪 0:未刪 void addbook(int n,char*na,charau,char*n2,charda,charti,int pr)/增加圖書(shū)
12、160; tag=0; no=n; price=pr; strcpy(name,na);
13、0; strcpy(author,au); strcpy(no2,n2); strcpy(dan,da);&
14、#160; strcpy(time,ti); onshelf=1; int bor
15、rowbook() /借書(shū)操作 if(onshelf=1)
16、 onshelf=0; return 1;
17、160; return 0; v
18、oid retbook()onshelf=1; /還書(shū)操作 void disp() /輸出圖書(shū) cout<set
19、w(10)no<setw(10)<<name<setw(10)<<setw(10) <authorsetw(10)<no2<setw(10)dan<setw(10)<time <<set
20、w(10)<price; if(onshelf=1)cout<setw(10)<<"在架"; else cout<setw(10)”已借出”<endl; ;/-class BDatabase /圖
21、書(shū)庫(kù)類(lèi) int top; /圖書(shū)數(shù)量記錄指針 Book bookMaxb; /圖書(shū)記錄public: BDatabase() /構(gòu)造函數(shù),將book。txt讀到book中
22、; Book b; top=-1; fstream file("book.txt”,ios::in);
23、60; while(1) file。read(char*)&b,sizeof(b));
24、 if(!file)break; top+; booktop
25、=b; file.close(); void clear()top=-1; /全刪
26、; int addbook(int n,charna,charau,char*n2,charda,charti,int pr)/增加圖書(shū) Book *p=query(n);/調(diào)用函數(shù)
27、0; if(p=NULL) top+;
28、0; booktop.addbook(n,na,au,n2,da,ti,pr); return 1;
29、0; return 0; Book query(int bookid) /查找圖書(shū)
30、; for(int i=0;i<=top;i+) &
31、#160; if(booki。getno()=bookid&&booki.gettag()=0) return
32、60; &booki; return NULL; &
33、#160; Book query2(int bookid,char *name)/按書(shū)名查找圖書(shū) for(int i=0;i=top;i+)
34、 if(strcmp(booki.getname(),name)=0)
35、 bookid=booki.getno(); &
36、#160; return &booki;
37、0; return NULL; Book *query3(int bookid,char author) /按作者查找圖書(shū)
38、60; for(int i=0;i<=top;i+) if(strcmp(b
39、ooki.getauthor(),author)=0) bookid=booki。getno();
40、0; return booki; &
41、#160; return NULL; void bookdata(); /圖書(shū)庫(kù)
42、維護(hù) void disp() /輸出圖書(shū) cout<<setw(10)<<"圖書(shū)編號(hào)”<setw(10)<"圖書(shū)名字"
43、60; <setw(10)<<"圖書(shū)作者”setw(10)"圖書(shū)分類(lèi)” setw(10)<"出版單位"<<setw(10)<<"出版時(shí)間"
44、60; <<setw(10)<<”價(jià)格"setw(10)”借還信息”<endl; for(int i=0;i<=top;i+)
45、0; if(booki.gettag()=0) booki.disp();
46、0; BDatabase() /析構(gòu)函數(shù),將book寫(xiě)入book.txt文件中
47、 fstream file(”book。txt",ios::out); for(int i=0;i<=top;i+)
48、 if(booki.gettag()=0) file。write(char*)booki,sizeof(booki);
49、 file.close(); ;void BDatabase:bookdata() int bookid;
50、 /圖書(shū)編號(hào)char bname40; /圖書(shū)名char bauthor10; /圖書(shū)作者char bno220; /圖書(shū)分類(lèi)char bdan20; /出版單位char btime20; /出版時(shí)間int bprice; /圖書(shū)價(jià)格Book b; int choice=1;int choice2=1;int choice3=1; while(choice!
51、=0) cout"ttt圖書(shū)信息維護(hù)n"; cout<"ttt1.添加信息n”; cout<<"ttt2.修
52、改信息n"; cout<<”ttt3.刪除信息n"; cout"ttt4。信息查詢(xún)n”; cout<"ttt5。顯示信息n”;
53、0; cout<”ttt6.全部刪除n”; cout"ttt0.退出圖書(shū)信息維護(hù)n"; cout”請(qǐng)選擇:" cinchoice; &
54、#160; switch(choice) case 1: cout"添加圖書(shū)操作:
55、n”; cout<"請(qǐng)輸入圖書(shū)編號(hào):”; cin>>bookid; cout<<”請(qǐng)輸入書(shū)名:”; cinbname; cout"
56、請(qǐng)輸入圖書(shū)作者:"; cin>>bauthor; cout<<"請(qǐng)輸入圖書(shū)分類(lèi):"; cin>bno2; cout"請(qǐng)輸入出版單位:”;
57、; cin>>bdan; cout<"請(qǐng)是輸入出版時(shí)間:" cin>btime; cout<<"請(qǐng)輸入圖書(shū)價(jià)格:"; cin>>bprice;
58、; addbook(bookid,bname,bauthor,bno2,bdan,btime,bprice); cout"圖書(shū)編號(hào)”bookid<<"添加成功n”; break; &
59、#160; case 2: cout”修改圖書(shū)信息操作:n" cout<”請(qǐng)輸入圖書(shū)編號(hào):”; cin>>bookid;
60、60; b=query(bookid); if(b=NULL) cout<<”圖書(shū)不存在,無(wú)法修改n”; break;
61、 cout<"請(qǐng)輸入要更改的:1.書(shū)名 2。作者名 3。分類(lèi) 4。出版單位 5。出版時(shí)間 6。圖書(shū)價(jià)格”; cin>>choice2; switch(choice2)
62、60; case 1: cout<"請(qǐng)輸入書(shū)名:”; cin>bname; b->setname(bname);&
63、#160; cout"修改書(shū)名成功n"; break; case 2: &
64、#160; cout<<”請(qǐng)輸入作者名:" cin>>bauthor; b-setauthor(bauthor); cout<"修改作者名成功n"
65、; break; case 3: cout"請(qǐng)輸入分類(lèi)號(hào):”;
66、0; cin>bno2; b>setno2(bno2); cout<"修改分類(lèi)成功n"; break;
67、160; case 4: cout<”請(qǐng)輸入出版單位:”; cin>bdan; &
68、#160; b->setdan(bdan); cout”修改出版單位成功n" break; case 5:
69、0; cout<<”請(qǐng)輸入出版時(shí)間:"; cin>>btime; b->settime(btime);
70、 cout<"修改出版時(shí)間成功n”; break; case 6: cout"
71、請(qǐng)輸入圖書(shū)價(jià)格:”; cin>>bprice; b>setprice(bprice); cout"修改圖書(shū)價(jià)格成功n" break
72、; break; case 3:
73、0; cout<"刪除圖書(shū)操作:n”; cout<”請(qǐng)輸入圖書(shū)編號(hào):”; cin>>bookid; b=query(bookid); if(b=NULL)cout&quo
74、t;不存在該圖書(shū),無(wú)法刪除n”; b>delbook(); cout<”刪除圖書(shū)成功n”; break; case 4:
75、; cout<"圖書(shū)信息查詢(xún)操作:n”; cout”1。按圖書(shū)編號(hào)查詢(xún) 2。按圖書(shū)作者查詢(xún) 3.按圖書(shū)名字查詢(xún)n”; cout<”請(qǐng)選擇查詢(xún)方式:”; cin>choice3; switch(choice3)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 司機(jī)擔(dān)保協(xié)議合同
- 零售連鎖店經(jīng)營(yíng)模式創(chuàng)新與數(shù)字化升級(jí)解決方案
- 園林綠化工程設(shè)計(jì)合同
- 匯流箱施工方案
- 委托物業(yè)管理電梯協(xié)議書(shū)
- 解決方案優(yōu)化提案書(shū)
- 個(gè)人民間借貸合同書(shū)
- 咨詢(xún)服務(wù)委托合同協(xié)議書(shū)
- 外墻保溫吊籃施工方案
- 特色廊架施工方案
- 不良資產(chǎn)項(xiàng)目律師法律盡調(diào)報(bào)告(模板)
- 2023年人力資源和社會(huì)保障部公開(kāi)招聘工作人員筆試參考題庫(kù)(共500題)答案詳解版
- 高級(jí)技校電氣自動(dòng)化設(shè)備安裝與維修教學(xué)計(jì)劃
- 《長(zhǎng)征之戰(zhàn)役》課件
- 心電監(jiān)護(hù)操作評(píng)分標(biāo)準(zhǔn)
- 保健品概念及分類(lèi)
- 水土保持監(jiān)理實(shí)施細(xì)則
- 自體血液回收機(jī)使用(精京3000P型)課件
- 非法捕撈水產(chǎn)品罪
- 中鋁中州礦業(yè)有限公司禹州市方山鋁土礦礦山地質(zhì)環(huán)境保護(hù)和土地復(fù)墾方案
- 漿渣自分離立式磨漿機(jī)設(shè)計(jì)-畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論