版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中南大學(xué)資源與安全工程學(xué)院課程設(shè)計(jì)報(bào)告課程名稱C+ 課程設(shè)計(jì)課題名稱圖書(shū)管理系統(tǒng)設(shè)計(jì)專業(yè)城市地下空間工程班級(jí)城地1001班學(xué) 號(hào) 07姓名彭xx指導(dǎo)教師 畢林2011年06 月26 日任務(wù)書(shū)下達(dá)日期 2011 年 06 月 20 日任務(wù)完成日期 2011 年 06 月 26 日題目三:圖書(shū)管理系統(tǒng)設(shè)計(jì)(一)、課程設(shè)計(jì)題目:圖書(shū)管理系統(tǒng)設(shè)計(jì)(二)、要求:使用二進(jìn)制文件方式存儲(chǔ)數(shù)據(jù),系統(tǒng)以菜單方式工作(三)、設(shè)計(jì)方法和基本原理:1、功能描述:( 1)新進(jìn)圖書(shū)基本信息的輸入。( 2)圖書(shū)基本信息的查詢。( 3)對(duì)撤消圖書(shū)信息的刪除。( 4)為借書(shū)人辦理注冊(cè)。( 5)辦理借書(shū)手續(xù)。( 6)辦理還書(shū)手續(xù)
2、。2、問(wèn)題的解決方案:根據(jù)系統(tǒng)功能要求,可以將問(wèn)題解決分為以下步驟:( 1)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);( 2)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為;3)根據(jù)問(wèn)題描述,設(shè)計(jì)系統(tǒng)的類(lèi)層次; 4)完成類(lèi)層次中各個(gè)類(lèi)的描述(包括屬性和方法); 5)完成類(lèi)中各個(gè)成員函數(shù)的定義; 6)完成系統(tǒng)的應(yīng)用模塊; 7)功能調(diào)試;8 )完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說(shuō)明書(shū)設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求1.課程設(shè)計(jì)目的:從課程設(shè)計(jì)的實(shí)踐活動(dòng)中獲得知識(shí)提高。要求學(xué)生達(dá)到熟練掌握C+叫言的基本知識(shí)和技能;基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的思想和方法;能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)?/p>
3、象程序設(shè)計(jì)問(wèn)題,從而提高動(dòng)手編程解決實(shí)際問(wèn)題的能力。. 總體設(shè)計(jì)系統(tǒng)功能分析:系統(tǒng)通過(guò)調(diào)用函數(shù)來(lái)實(shí)現(xiàn)刪除圖書(shū)、讀者信息,添加圖書(shū)、讀者信息等功能。delbook( )函數(shù)用于刪除圖書(shū)信息; addbook( )函數(shù)用于增加圖書(shū)信息; borrowbook( )函數(shù)用于實(shí)現(xiàn)借書(shū)操作; returnbook( ) 函數(shù)用于實(shí)現(xiàn)還書(shū)操作等等;主函數(shù)用于掉用這些函數(shù)。系統(tǒng)功能模塊劃分與設(shè)計(jì)本系統(tǒng)定義了 Book類(lèi)、BDatebase類(lèi)、Reader類(lèi)、RDatebase類(lèi)這四個(gè)類(lèi),定義了addbook ( ) 、 addreader( ) 、 borrowbook ( ) 、 setname( ) 等
4、函數(shù)來(lái)實(shí)現(xiàn)系統(tǒng)所需功系統(tǒng)功能模塊圖:程序?qū)崿F(xiàn)功能退出程序刪除信息查詢信自心輸出顯示、乂件錄入讀者庫(kù)類(lèi)讀者類(lèi)圖書(shū)庫(kù)類(lèi)圖書(shū)類(lèi). 3.詳細(xì)設(shè)計(jì)讀者類(lèi)的設(shè)計(jì)該類(lèi)定義了借書(shū)操作,還書(shū)操作,設(shè)置讀者姓名等功能Reader+name20:char+no:int+tag:int+borbook:int+ getname():char+gettag():int+ getno():int+setname(char na):void+ delbook():void+ addreader(int n,char *na):void+ borrowbook(int bookid):void+ retbook(int bo
5、okid):int+ disp():void圖讀者庫(kù)類(lèi)類(lèi)的設(shè)計(jì)該類(lèi)實(shí)現(xiàn)了建立讀者的個(gè)人資料,刪除讀者信息,輸出讀者信息等功能。RDatebase+ top:int+ rname20:char+readerid:int+readerdata():void+choice:char+addreader(int n,char *na):int+clear():void+disp():void圖圖書(shū)類(lèi)的設(shè)計(jì)圖書(shū)類(lèi),可以實(shí)現(xiàn)對(duì)圖書(shū)的描述,圖書(shū)的編號(hào),書(shū)名,借出,還入等操作。Book+no:int+name20:char+onshelf:int+getname():char+getno():int+gett
6、ag():int+setname(char na):void+delbook():void+addbook():void+borrowbook():int+retbook():void +disp ():void圖書(shū)庫(kù)類(lèi)的設(shè)計(jì)Xingzhengrenyuan+top:int+clear():void+addbook(int n,char *na):int+bookdata():void+bookdata():void+ disp():void圖.調(diào)試與測(cè)試:系統(tǒng)調(diào)試在調(diào)試過(guò)程中,出現(xiàn)了一些錯(cuò)誤。1、輸入數(shù)據(jù)時(shí),輸錯(cuò)了數(shù)據(jù)的類(lèi)型會(huì)造成死循環(huán),因此輸入時(shí)需要注意開(kāi)始主界面輸入非正確數(shù)字時(shí),沒(méi)有提示
7、錯(cuò)誤。容易造成用戶誤解開(kāi)圖書(shū)管理系統(tǒng)1借書(shū)2還書(shū)3圖書(shū)維護(hù)4讀者維護(hù)0離開(kāi)在主函數(shù)的switch語(yǔ)句結(jié)束處加上default:cout 輸入錯(cuò)誤,請(qǐng)從新輸入:;就可以了,修改后:輸入錯(cuò)誤,清從新輸入:圖書(shū)管理系統(tǒng)1借書(shū)2還書(shū)?圖書(shū)維護(hù) 事讀者維護(hù)口離開(kāi)圖具體調(diào)試過(guò)程。主界面圖書(shū)管理系銃1借書(shū)2還書(shū) 口圖書(shū)維護(hù)4讀者維護(hù) 口離開(kāi)圖圖書(shū)維護(hù)圖書(shū)維護(hù)增改巽示母silt12 3 4 5 6 0圖讀者維護(hù)讀者維護(hù)1新增 Z更改3刪除 可查找 E顯示6全刪0退出圖.結(jié)果分析本程序總共設(shè)計(jì)了四個(gè)類(lèi),滿足了課題對(duì)類(lèi)的要求,在設(shè)計(jì)的過(guò)程中,建立了較為清晰的類(lèi)層次,也利用了面向?qū)ο蟮姆椒ㄒ约?C+勺編程思想來(lái)完成
8、系統(tǒng)的設(shè)計(jì),做 到了每個(gè)借閱者建立一個(gè)賬戶,賬戶中存儲(chǔ)借閱者的個(gè)人信息、借閱信息等要求。而 且界面美觀,容易操作。但是程序太長(zhǎng),不夠簡(jiǎn)練,導(dǎo)致出現(xiàn)錯(cuò)誤很難發(fā)現(xiàn)和修改。.總結(jié)感想和體會(huì):通過(guò)這次的課程設(shè)計(jì),讓我們充分的感覺(jué)到了要自己設(shè)計(jì)一個(gè)程序是多么的難, 以及學(xué)習(xí)好C+是多么的重要。在這個(gè)程序的設(shè)計(jì)過(guò)程中,我們清楚的意識(shí)到自己的水平有多么的薄弱,課程的 知識(shí)學(xué)得有多么的不扎實(shí)??淳W(wǎng)上的例子好像覺(jué)得也沒(méi)那么難,自己一上機(jī)實(shí)際操作就出現(xiàn)了很多問(wèn)題,調(diào)試的時(shí)候系統(tǒng)總是在報(bào)錯(cuò),還有很多警告,每增加一個(gè)函數(shù)就要調(diào)試好久,有時(shí)候應(yīng)為少了一個(gè)大括號(hào)或是分號(hào),導(dǎo)致要找很久很久。雖然系統(tǒng)可以運(yùn)行,也具有了一些基
9、本的功能,但我們意識(shí)到了自己有太多的不足。以后還會(huì)有很多的課程設(shè)計(jì),一定要吸取這次的教訓(xùn),把知識(shí)學(xué)懂學(xué)透學(xué)精,真正的為我所用,這樣走上社會(huì)我們才能真正的發(fā)揮所長(zhǎng)。我們?nèi)齻€(gè)人分工合作,組長(zhǎng)彭愛(ài)賢負(fù)責(zé)對(duì)程序的編譯,通過(guò)不斷的嘗試和學(xué)習(xí),最終制成程序的最初模式!謝經(jīng)緯負(fù)責(zé)對(duì)程序的修改。沈維健負(fù)責(zé)后期制作,總結(jié)組內(nèi)的制作經(jīng)驗(yàn)!通過(guò)努力,得以在規(guī)定的時(shí)間內(nèi)完成任務(wù)。這一次的C+硯程設(shè)計(jì)讓我們學(xué)到了很多知識(shí),懂得如何發(fā)現(xiàn)問(wèn)題,并解決!非常感謝老師及同學(xué)們的幫助,讓我們有這一個(gè)機(jī)會(huì)好好學(xué)習(xí)C+勺更廣泛的知識(shí)。、源程序清單:#include #include void setname(char na) ddr
10、eader(n,na); return 1;return 0;Reader *query(int readerid) etno()=readerid & readi.gettag()=0)return &readi; isp();void readerdata();RDatabase()fstream file(,ios:out); ettag()=0)(char *)&readi,sizeof(readi);();void RDatabase:readerdata()char choice;char rname20;int readerid;Reader *r;while (choice!=
11、0)cout nnttt 讀者維護(hù)nnntt 1新增nntt 2 更改nntt 3 刪除nntt 4 查 找nntt 5 顯 示nntt 6 全 刪nntt 0 退 出endl;ddbook(n,na,au,pr);return 1;return 0;Book *query(int bookid)for (int i=0;i=top;i+)if (booki.getno()=bookid &booki.gettag()=0)return &booki;return NULL;void bookdata();void disp()for (int i=0;i=top;i+)if (booki.g
12、ettag()=0)booki.disp();BDatabase()fstream file(,ios:out); ettag()=0)(char *)&booki,sizeof(booki);();void BDatabase:bookdata()char choice;char bauthor10;int bprice;char bname40;int bookid;Book *b;while (choice!=0)cout nnnttt 圖 書(shū) 維 護(hù) endlendl;couttt1 新增 n tt2 更改 ntt3 刪除 ntt4 查找 ntt5 顯示ntt6 全刪ntt0 退出 c
13、hoice;switch (choice)case 1:cout 輸入圖書(shū)編號(hào): bookid;cout 輸入圖書(shū)書(shū)名: bname; coutbauthor;coutbprice;addbook(bookid,bname,bauthor,bprice);break; / 結(jié)束循環(huán)case 2:cout 輸入圖書(shū)編號(hào): bookid;b=query(bookid);if (b=NULL)cout 該圖書(shū)不存在endl;break;cout 輸入新的書(shū)名 : bname;b-setname(bname);break;case 3:cout 讀入圖書(shū)編號(hào): bookid;b=query(booki
14、d);if (b=NULL)cout 該圖書(shū)不存在 delbook();break;case 4:cout 讀入圖書(shū)編號(hào): bookid;b=query(bookid);if (b=NULL)cout 該圖書(shū)不存在disp();break;case 5:disp();break;case 6:clear();break;default:cout 輸入錯(cuò)誤,請(qǐng)從新輸入:;void main() / 主函數(shù)char choice;int bookid,readerid;RDatabase ReaderDB;Reader *r;BDatabase BookDB;Book *b;while(choice!=0)cout endlendlttt 圖書(shū)管理系統(tǒng)nnn;cout ttt1 借書(shū) nnttt2 還書(shū) nnttt3 圖書(shū)維護(hù)nnttt4讀者維護(hù)nnttt0離開(kāi) choice;switch (choice)case 1:cout readerid;II.cout bookid; r=(readerid);if (NULL=r) cout 不存在該讀者,不能借書(shū) endl; break;b=(bookid);if (b=NULL) cout 不存在該圖書(shū),不能借書(shū) borrowbook()=0)cout 該圖書(shū)已借出,不能借書(shū) borrowbook(
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 通信終端設(shè)備在車(chē)聯(lián)網(wǎng)中的應(yīng)用考核試卷
- 鄉(xiāng)村旅游行業(yè)技術(shù)創(chuàng)新與應(yīng)用
- 完善鄉(xiāng)村旅游市場(chǎng)監(jiān)管與法規(guī)建設(shè)
- 肉類(lèi)罐頭產(chǎn)品的消費(fèi)趨勢(shì)與市場(chǎng)前景預(yù)測(cè)考核試卷
- 噴涂設(shè)備在汽車(chē)修補(bǔ)行業(yè)的應(yīng)用考核試卷
- 銅冶煉廠的綠色生產(chǎn)與循環(huán)經(jīng)濟(jì)模式考核試卷
- 建筑施工企業(yè)會(huì)計(jì)科目表
- 2024年9月快手直播電商營(yíng)銷(xiāo)月報(bào)
- 制濃縮咖啡的電咖啡機(jī)項(xiàng)目可行性實(shí)施報(bào)告
- 混凝土冬季施工準(zhǔn)備
- 江蘇省常州市金壇區(qū)2023-2024學(xué)年高二上學(xué)期期中質(zhì)量調(diào)研語(yǔ)文試卷(含答案)
- 《憲法宣傳教育》班會(huì)
- 農(nóng)村積分超市實(shí)施方案(2篇)
- 2024山東威海市乳山市公安局輔警招聘筆試參考題庫(kù)含答案解析
- 壓軸題03 電路故障綜合(解析版)-2024年中考物理壓軸題專項(xiàng)訓(xùn)練
- 7往事依依省公開(kāi)課一等獎(jiǎng)新名師課比賽一等獎(jiǎng)?wù)n件
- 《飛機(jī)結(jié)構(gòu)與系統(tǒng)》課件-機(jī)身結(jié)構(gòu)
- 九年級(jí)歷史與社會(huì)上冊(cè)復(fù)習(xí)提綱
- 2024屆高考英語(yǔ)復(fù)習(xí):2022年全國(guó)新高考Ⅰ卷讀后續(xù)寫(xiě)真題-David的賽跑課件
- 2024年醫(yī)藥衛(wèi)生考試-抗生素知識(shí)筆試參考題庫(kù)含答案
- (正式版)JBT 106-2024 閥門(mén)的標(biāo)志和涂裝
評(píng)論
0/150
提交評(píng)論