




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、圖書管理系統(tǒng)實(shí)驗(yàn)報(bào)告班級:軟件工程0807程序員:趙博聰 200826630726傅欽聰 200826630708成金誠 2008266307042009.6報(bào)告目錄1總體說明1.1需求說明1.11需求分析1.12系統(tǒng)性能1.2功能介紹詳細(xì)功能登錄讀者模塊工作人員模塊管理員模塊1.3設(shè)計(jì)思路2數(shù)據(jù)設(shè)計(jì)與程序?qū)崿F(xiàn):2.1數(shù)據(jù)設(shè)計(jì)圖書數(shù)據(jù)設(shè)計(jì)讀者數(shù)據(jù)設(shè)計(jì)其他用戶數(shù)據(jù)設(shè)計(jì)存儲文件設(shè)計(jì)2.2類的作用 people類 reader類2.2.3 workers類 manger類2.2.5 book類 DBFile類3數(shù)據(jù)測試3.1選擇登錄類型.3.1.1讀者登錄.3.1.2工作人員登陸.管理人員登陸.讀者
2、注冊.退出系統(tǒng).4 總結(jié):111總體說明1.1需求說明1.1.1需求分析1 能夠?qū)崿F(xiàn)讀者可以自助注冊。2 能夠?qū)崿F(xiàn)多種關(guān)鍵字查書,及查看所有館藏書目功能。3 實(shí)現(xiàn)管理人員借書,還書功能。4 實(shí)現(xiàn)管理人員,對于讀者,工作人員的修改(包括添加刪除)5 能夠?qū)崿F(xiàn)管理人員添加,修改館藏書目。6 能夠?qū)崿F(xiàn)上層人員查看下層人員信息。1.1.2系統(tǒng)性能1 系統(tǒng)安全2 功能齊全3 實(shí)現(xiàn)一般的糾錯(cuò)功能(即對讀者一般的輸入錯(cuò)誤判斷)4 易于維護(hù)和擴(kuò)充數(shù)據(jù)1.2功能介紹圖書管理系統(tǒng)(LMS)用于圖書館進(jìn)行圖書的管理,主要的功能包括借書、還書、查找等。不同的使用對象具有不同的權(quán)限,詳細(xì)見下表:表 1 系統(tǒng)功能表使用對
3、象功能詳細(xì)功能讀者查看/修改個(gè)人信息,查看個(gè)人借閱信息查詢圖書信息(根據(jù)不同字段查詢)工作人員查詢讀者信息(個(gè)人信息和讀者借書情況)還書借書查詢圖書信息(根據(jù)不同字段查詢)管理人員維護(hù)圖書信息添加、編輯圖書信息維護(hù)讀者信息添加、刪除、編輯讀者信息維護(hù)人員信息添加、刪除工作人員信息查詢圖書信息(根據(jù)不同字段查詢)1.2.1詳細(xì)功能簡介登錄選擇登錄身份(讀者、工作人員、管理員),輸入用戶名和密碼,成功后進(jìn)行相應(yīng)的功能模塊。讀者模塊讀者可以查找館藏書目,了解圖書館有哪些書,是否可借。(可選擇根據(jù)不同字段查找書本也可全顯書本)讀者可以查看個(gè)人借書情況和修改基本個(gè)人信息、修改密碼。工作人員模塊可以查找館
4、藏書目,了解圖書館有哪些書,是否可借。根據(jù)讀者用戶名查詢讀者信息,顯示該讀者基本信息,和借書情況。讀者信息高級查找可以根據(jù)姓名等其他信息進(jìn)行查找(可選功能)借書功能:首先輸入讀者用戶名,在該狀態(tài)下依次輸入該讀者借的書,完成圖書的借閱工作。還書功能:直接輸入圖書號,將該書的信息改為入庫,并修改讀者的借書記錄。管理員模塊可以查找館藏書目,了解圖書館有哪些書,是否可借。維護(hù)圖書信息:添加:進(jìn)入添加狀態(tài),根據(jù)提示依次輸入圖書的基本信息,默認(rèn)狀態(tài)下為繼續(xù)輸入。修改:輸入書號,找到該書,根據(jù)提示選擇該圖書需要修改的字段,并進(jìn)行修改。刪除:刪除工作人員,讀者1.3設(shè)計(jì)思路采用面向?qū)ο蟮姆绞綄?shí)現(xiàn)圖書管理系統(tǒng),
5、根據(jù)不同的使用權(quán)限,使用對象分為讀者、工作人員和管理員。圖 11 系統(tǒng)主要類結(jié)構(gòu)圖分別設(shè)計(jì)讀者類、工作人員類、管理員類(如上圖),人員類為基類實(shí)現(xiàn)通用的功能。(如查找圖書信息)用文本文件進(jìn)行數(shù)據(jù)的保存,需要保存的數(shù)據(jù)主要包括圖書數(shù)據(jù)、用戶數(shù)據(jù)(包括讀者、工作人員、管理員)。設(shè)置數(shù)據(jù)操作類,實(shí)現(xiàn)所有的文本操作相關(guān)的功能。2數(shù)據(jù)設(shè)計(jì)與類的作用2.1數(shù)據(jù)設(shè)計(jì)圖書數(shù)據(jù)設(shè)計(jì)表 2 book文件字段設(shè)計(jì)表字段名稱中文名類型no書號Intname書名Char(40)author作者Char(20)press出版社Char(40)storenum藏書量Intborrownum借出數(shù)Int讀者數(shù)據(jù)設(shè)計(jì)表 3 U
6、sers文件字段設(shè)計(jì)字段名稱中文名類型Name用戶名Char(15)Truename真實(shí)姓名Char(10)Password登錄密碼Char(9)Name真實(shí)姓名Char(20)Sex性別Char(3)borrows借閱書數(shù)目IntBorrow所借閱的書號Int(5) 其他用戶數(shù)據(jù)設(shè)計(jì)表 4 其他用戶(管理員,工作人員)字段設(shè)計(jì)字段名稱中文名類型Name用戶名Char(15)password密碼Char(10)存儲文件設(shè)計(jì)reader.txt 存儲讀者信息,數(shù)據(jù)順序?yàn)?用戶名,密碼,性別,年齡,書名號manager.txt 存儲管理員信息,數(shù)據(jù)順序?yàn)?用戶名,密碼worker.txt 存儲工作
7、人員信息, 數(shù)據(jù)順序?yàn)?用戶名,密碼book.txt 存儲書本信息,數(shù)據(jù)順序?yàn)?書名號,書名,作者,出版社,館藏?cái)?shù)量,借出數(shù)量2.2類的作用2.2.1people類(基類)people類包含成員:char name15/儲存用戶名char password10/儲存密碼people()/成員函數(shù)有默認(rèn)構(gòu)造函數(shù)virtual people()/虛析構(gòu)函數(shù)函數(shù)char *getname()/讀取用戶名char *getpass()/讀取密碼void setname(char *)/設(shè)置用戶名void setpass(char *)/設(shè)置密碼void search_book(book*)/跳出查書界
8、面函數(shù)book* find_book (long,book*),void search_one_book(book* Bhead)/用于按書號查找圖書函數(shù)void print_all_book(book*)/查看全部圖書reader類(people類派生)reader類包含成員:char sex2/儲存性別int age/儲存年齡int borrows/儲存借書總數(shù)long borrow10/ 儲存具體借書reader* next/連接下一個(gè)的鏈表reader()/成員函數(shù)有默認(rèn)構(gòu)造函數(shù)virtual reader()/虛析構(gòu)函數(shù)函數(shù)void output()/輸出讀者信息函數(shù)void upd
9、ate_reader()/修改個(gè)人信息函數(shù)void output_borrows(book*)/查看個(gè)人借書情況。workers類(people類派生) workers類包含成員:char sex2/儲存性別int age/儲存年齡worker*next/連接下一個(gè)的鏈表worker()/成員函數(shù)有默認(rèn)構(gòu)造函數(shù)virtual worker()/虛析構(gòu)函數(shù)函數(shù)void borrow_book(reader*,book*)/借書函數(shù)void return_book(reader*,book*)/還書函數(shù)reader* find_reader(char*,reader*)/查看讀者信息友元函數(shù)fri
10、end istream& operator >>(istream& in,worker& w)/重載>>操作符manger類(people類派生)manger類包含成員:char sex2/儲存性別int age/儲存年齡manger* next/連接下一個(gè)的鏈表manger()/成員函數(shù)有默認(rèn)構(gòu)造函數(shù)virtual manger()/虛析構(gòu)函數(shù)函數(shù)reader* find_reader(char*,reader*), void update_reader (reader*)/更新讀者信息函數(shù)worker* find_worker(char*,w
11、orker*),void update_worker(worker*&),void update_add_worker(worker*),void update_delete_worker (worker*&)/更新工作人員信息函數(shù)void update_book (book*&),void update_add_book(book*),void update_delete_book(book*&),void update_revise_book(book*)/更新圖書館藏書信息book類book類包含成員:long no/儲存書號char name40/儲存書
12、名char author20/ 儲存作者char press40/ 儲存出版社int storenum/儲存館藏?cái)?shù)目int borrownum/儲存借書數(shù)目book* next/連接下一個(gè)的鏈表book()/成員函數(shù)有默認(rèn)構(gòu)造函數(shù)virtual book()/虛析構(gòu)函數(shù)函數(shù)void output()/輸出圖書信息友元函數(shù)friend ostream& operator <<(ostream& ou,const book& b),friend istream& operator >>(istream& in,book& b)
13、/重載操作符<<和>>DBFile類該類的每個(gè)對象操作一個(gè)數(shù)據(jù)文件,包含讀、存、查找、刪除數(shù)據(jù)的函數(shù):函數(shù)book* load_book(),reader* load_reader(),worker* load_worker(),manger* load_manger()/讀入文檔中的書,讀者,工作人員和管理人員的數(shù)據(jù)函數(shù)void login_reader(reader* Rhead,book* Bhead),void login_worker(worker* Whead,book* Bhead,reader* Rhead),void login_manger(mang
14、er* Mhead,book* &Bhead,reader* Rhead,worker* &Whead)/讀者 工作人員和管理人員的登錄函數(shù)void dealchoice(reader* here,book* Bhead),void dealchoice(worker* here,book* Bhead,reader* Rhead),void dealchoice(manger* here,worker *&Whead,book* &Bhead,reader* Rhead)/登錄后讀者 工作人員和管理人員的相關(guān)操作函數(shù)void registerreader(re
15、ader* Rhead)/新讀者的注冊函數(shù)void save_book(book* Bhead),void save_reader(reader* Rhead),void save_worker(worker* Whead),void save_system(book* Bhead,reader* Rhead,worker* Whead)/保存數(shù)據(jù)到文檔3數(shù)據(jù)測試:3.1選擇登錄類型如圖為登入界面,根據(jù)用戶的需要選擇登入的方式3.1.1讀者登錄選擇2之后進(jìn)入讀者登入界面,如果輸入不正確會出現(xiàn)如圖:輸入正確后會出現(xiàn):選查看館藏書目:按書號查詢:1234 您所查詢的書不存在 繼續(xù)查詢輸入1,否則輸
16、入0:0 查看所有圖書,就會顯示如圖。返回查看個(gè)人借閱信息修改個(gè)人信息:(1)修改年齡 (2)修改姓名 (3)修改密碼 (4)退出登入查看個(gè)人信息:退出登錄返回上層3.1.2工作人員登錄請輸入用戶名:A 請輸入密碼:1234密碼錯(cuò)誤!是否重新輸入?(是輸入1,不是輸入0)1請輸入用戶名:AA請輸入密碼:123456 該用戶不存在!是否重新輸入?(是輸入1,不是輸入0)0借書:(1)輸入讀者用戶名 :zbc(2)輸入書號:1234 沒有該書!請重新輸入 輸入書號:abcd沒有該書!請重新輸入 輸入書號:10001借書成功還書:()輸入讀者用戶名 :bbc沒有該用戶!請重新輸入! ()輸入要還書號
17、:10002 此讀者未借此書圖書信息查詢:()按書號查詢()查看所有圖書(3)返回讀者信息查詢:輸入讀者信息 zbc退出登入3.1.3管理人員登錄請輸入用戶名:zbc請輸入密碼:0311 該用戶不存在是否重新輸入?(是輸入1,不是輸入0)1請輸入用戶名:yeyang 請輸入密碼:000000登入界面如下查找圖書館藏書:(1)按書號查看:12343 您所查詢的書不存在 繼續(xù)查詢輸入1,否則輸入0:繼續(xù)查詢輸入1,否則輸入0:0 (2)查看所有圖書(3)返回更新圖書館藏書:(1)添加:輸入書名 abc,輸入作者zbc ,輸入出版社zjut,輸入館藏量2,添加成功! 是否繼續(xù)添加?<是輸入1,
18、否輸入0>(2)刪除:請輸入要刪除的圖書號: 10001 此書刪除成功! (3)編輯:1.修改書名2.修改作者3.修改館藏?cái)?shù)目4.修改出版社(4)返回讀者信息維護(hù):(1)修改年齡 (2)修改姓名(3)修改密碼 工作人員信息維護(hù):(1)添加工作人員:輸入用戶面:ggm 輸入密碼:ggm 添加成功!是否繼續(xù)添加?(是輸入1,否輸入0):0(2)刪除工作人員:請輸入刪除工作人員的賬號:ggm 刪除成功?。?)返回 3.1.4讀者注冊1.請輸入你的用戶名: yeyang2.請輸入四位密碼: 1234 3. 輸入新性別(男輸入1,女輸入0):14. 輸入新年齡 :19 3.1.5退出系統(tǒng)4實(shí)驗(yàn)總結(jié)實(shí)驗(yàn)剛開始的時(shí)候,完全不知道從何入手,多次閱讀一些有關(guān)資料整理之后了解了實(shí)驗(yàn)要求,確定了類。之后從類的書寫入手,一個(gè)個(gè)編寫完善。我們十分珍惜此次C+大型實(shí)驗(yàn)的機(jī)會,通過自己的努力,學(xué)會了如何用C+編寫一個(gè)簡單的管理系統(tǒng)。首先要對程序的設(shè)計(jì)要求有比較明確的認(rèn)識,然后是系統(tǒng)分析與系統(tǒng)設(shè)計(jì),最后
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年自動化智能制造策劃合作協(xié)議
- 2025年上海市重大活動策劃合作安全協(xié)議
- 2025年人力資源服務(wù)外包協(xié)議模版
- 2025年官方策劃完整版離婚協(xié)議書模板范例
- 2025年威海市解除雇傭協(xié)議書
- 2025年教育合作機(jī)構(gòu)招生聯(lián)盟協(xié)議
- 數(shù)據(jù)泄露與信息安全的企業(yè)責(zé)任
- 2025年注冊稅務(wù)師稅法二重點(diǎn)難點(diǎn)與案例分析解析匯編專項(xiàng)專項(xiàng)高頻考點(diǎn)試卷
- 2025年有限空間作業(yè)安全操作規(guī)范試題集
- 2025年執(zhí)業(yè)藥師考試藥學(xué)綜合知識合理用藥案例解析與考試技巧試題
- 《靈飛經(jīng)》硬筆字帖精臨篇137張(可打印)
- 油漆工承包合同
- 機(jī)電各系統(tǒng)工程量計(jì)算教學(xué)課件
- 創(chuàng)造學(xué)-我愛創(chuàng)新-江西財(cái)經(jīng)大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
- 2023屆遼寧省撫順市新?lián)釁^(qū)五年級數(shù)學(xué)第二學(xué)期期末綜合測試試題含解析
- 失血性休克應(yīng)急預(yù)案及處理流程
- 上市公司執(zhí)行企業(yè)會計(jì)準(zhǔn)則案例解析-中國證監(jiān)會會計(jì)部編
- 陜西省西安市經(jīng)開區(qū)2022-2023學(xué)年八年級數(shù)學(xué)第二學(xué)期期末達(dá)標(biāo)測試試題含解析
- GA 1808-2022軍工單位反恐怖防范要求
- 2023年新疆維吾爾自治區(qū)中考模擬物理試卷(附答案)
- Unit 1 Extended reading Eating in China 公開課-高中英語牛津譯林版(2020)選擇性必修第一冊
評論
0/150
提交評論