面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言課設(shè)參考_第1頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言課設(shè)參考_第2頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言課設(shè)參考_第3頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言課設(shè)參考_第4頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言課設(shè)參考_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、南京航空航天大學(xué)面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言課程設(shè)計(jì)報(bào)告圖書(shū)管理系統(tǒng)學(xué)號(hào):姓名:日期:面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告(圖書(shū)管理系統(tǒng))目 錄一. 需求分析 .2二. 程序主要功能.2三. 程序運(yùn)行平臺(tái).2四. 系統(tǒng)功能框架圖.3五. 程序類說(shuō)明.4六. 模塊分析 .6七. 比較有特色的地方 .7八. 存在的不足與對(duì)策 .11九. 編程體會(huì) .12十.程序源代碼.131面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告(圖書(shū)管理系統(tǒng))一. 需求分析本系統(tǒng)旨在實(shí)現(xiàn)一個(gè)小型的圖書(shū)管理系統(tǒng),對(duì)于一個(gè)小型的圖書(shū)館或藏書(shū)室 來(lái)說(shuō),實(shí)施本系統(tǒng)不僅可以減少工作人員數(shù)量,降低成本, 而且可以大大提高工 作效率,降低工作強(qiáng)度,方便讀者借書(shū)查書(shū)及辦

2、理各種手續(xù), 更方便工作人員對(duì) 圖書(shū)進(jìn)行更有效的管理。程序主要實(shí)現(xiàn)讀者管理、圖書(shū)基本信息及庫(kù)存管理、圖書(shū)借還管理以及一些 輔助功能等。二. 程序主要功能該程序的主要功能有:讀者功能可進(jìn)行讀者注冊(cè)、登錄查看、修改密碼、注銷(xiāo)讀者、清除全部及查看幫助等操作。 其中登錄時(shí)要輸入姓名密碼。圖書(shū)信息管理可以進(jìn)行查找圖書(shū)、添加新書(shū)、刪除圖書(shū)、清空全部、修改、顯示全部等操作。 其中添加內(nèi)容包括:書(shū)名、ISBN編號(hào)、作者、出版商、出版日期及內(nèi)容簡(jiǎn)介、 是否在架,方便讀者根據(jù)不同需要進(jìn)行查找、查看;修改圖書(shū)中如果某一項(xiàng)不想修改,可以輸入 0保留該項(xiàng)原有信息。圖書(shū)借還功能應(yīng)該說(shuō)這是整個(gè)系統(tǒng)最主要的功能,用戶需先登錄

3、,借還時(shí)要輸入ISBN號(hào)(查看圖書(shū)時(shí)要記住ISBN號(hào),這是根據(jù)實(shí)際情況)3面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告(圖書(shū)管理系統(tǒng))幫助一個(gè)簡(jiǎn)單的操作指南,指導(dǎo)用戶下一步該如何操作。退出系統(tǒng)退出時(shí)將把所有內(nèi)容以二進(jìn)制保存到文件里,在運(yùn)行時(shí)將從文件載入信息。 另外,還制作了有關(guān)該系統(tǒng)的一些說(shuō)明,版本信息等。運(yùn)行程序后每一步都會(huì)有詳細(xì)的提示, 操作簡(jiǎn)便,大多數(shù)地方都考慮到防止 用戶出現(xiàn)誤操作的情況,以提高程序的健壯性,可以放心使用!.程序運(yùn)行平臺(tái)5層返回上一 .層該程序是用VC+6.0制做的,使用Microsoft Visual C+ 6.0運(yùn)行該程序,具 體操作是:打開(kāi) Microsoft Visual C+

4、 6.0,菜單欄里點(diǎn)文件打開(kāi)工作區(qū)找到“圖書(shū)管理系統(tǒng).dsw”這個(gè)文件打開(kāi),或者在資源管理器中雙擊該文件,此時(shí), VC+6.0會(huì)自動(dòng)打開(kāi),并載入該系統(tǒng)相關(guān)資源,點(diǎn)擊 Run命令菜單或者或用快捷 鍵Ctrl+F5運(yùn)行該程序。四. 系統(tǒng)功能框架圖圖書(shū)管理系統(tǒng)書(shū)庫(kù)信息退出系統(tǒng)有關(guān)該系 統(tǒng)的一些說(shuō)明.登錄查看r.新書(shū)入庫(kù).注冊(cè).注銷(xiāo).查找.刪除.修改密碼.幫助說(shuō)明.修改.顯示全部在架登錄借書(shū)廠還書(shū).返回上面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告(圖書(shū)管理系統(tǒng))五. 程序類說(shuō)明有關(guān)圖書(shū)信息的類和書(shū)庫(kù)類class Book/存儲(chǔ)圖書(shū)信息的類char BookName20;char ISBN20;char Writer

5、20;char Publisher20;char PublishDate20;/書(shū)名,用于查找/ISBN號(hào),用于查找/作者名,用于查找出版商,用于查找 出版日期,用于查找char Briefin troductio n 100;int i_o;Book *n ext;/該書(shū)內(nèi)容簡(jiǎn)介/判斷書(shū)是否借出,0為在架,1為借出/指向下一個(gè)節(jié)點(diǎn)的指針/*書(shū)庫(kù)類鏈表*/class BookList public:Book *node, *head_ptr;/定義兩個(gè) Book 指針,head_ptr 為頭指針,node為活動(dòng)指針BookList()/構(gòu)造函數(shù),使指針初始化node = new Booksiz

6、eof(Book);head_ptr = NULL;no de->next = NULL;11/存儲(chǔ)文件/上傳文件/新書(shū)登記,對(duì)node指向的類對(duì)象賦值增加結(jié)點(diǎn)到Book鏈表中,用于添加新書(shū)時(shí)/借書(shū)手續(xù)/還書(shū)手續(xù)/按ISBN號(hào)查找圖書(shū)按書(shū)名查找圖書(shū)/按作者名查找圖書(shū)讀者姓名密碼/每人最多借兩本書(shū),可以根據(jù)需要增減限額記錄借的書(shū)的數(shù)目,0為沒(méi)有借書(shū),1為借了一void save_file();void load_file();void AddNewBook();void Add_list(Book *p);char *borrow_book();char *retur n_book();i

7、nt search_ISBN(char *p);int search_BookName(char *p);int search_Writer(char *p);int search_Publisher(char *p);int search_PublishDate(char *p);void search();void show_c onten t(i nt n);void show_all();void delete_ on ebook();void cha nge_c onten t();void GoI nto_BookI nfo();有關(guān)讀者信息的類和讀者類class Reader /

8、 存儲(chǔ)讀者信息的類char ReaderName20; /char Password13;/char book120,book220;int y_n;/本,2為借了二本/按出版商查找圖書(shū)/按出版日期查找圖書(shū)進(jìn)入查找菜單顯示某本書(shū)的內(nèi)容顯示所有庫(kù)存的未被借出的圖書(shū)刪除某本書(shū)/更改某本書(shū)的信息進(jìn)入書(shū)庫(kù)信息菜單為頭Reader *n ext;/;/*讀者類鏈表*/class ReaderListprivate:int positi on;/public:Reader *po in t,*head_po int;/指針,point為活動(dòng)指針ReaderList()head_poi nt = NULL;

9、point = new Readersizeof(Reader); poin t-> next = NULL;void save_readerfile();/void load_readerfile();/void reader_register();/void Add_Poi nt(Reader *p);/void reader_la nd();/int search_ReaderName(char *p);/void show_O neReader(Reader *p);/void cha nge_password();/void delete_reader();/void GoI

10、nto_Readerl nfo();/;指向下一節(jié)點(diǎn)的指針表明鏈表中的第幾個(gè)節(jié)點(diǎn)定義兩個(gè) Rreader 指針,head_point/構(gòu)造函數(shù),使指針初始化存儲(chǔ)文件上傳文件讀者注冊(cè)增加新結(jié)點(diǎn)到鏈表讀者登錄按姓名查找顯示某讀者信息修改密碼讀者注銷(xiāo)讀者信息菜單六. 模塊分析1、讀者信息:下設(shè)子菜單,包括:a. 登錄查看b. 注冊(cè)c. 注銷(xiāo)d. 修改密碼e. 幫助說(shuō)明f. 返回上一層g. 清空全部讀者信息。所有函數(shù)均封裝在讀者類中(Reader_List),信息存儲(chǔ)在類Reader中,類中 定義了兩個(gè) Reader指針,一個(gè)是*head_point,作為鏈表的頭結(jié)點(diǎn),另一個(gè)是 *point,作為活動(dòng)

11、指針,在不同的類的成員函數(shù)中都可使用,為了防止該活動(dòng)指 針使用過(guò)頻,造成幾個(gè)函數(shù)同時(shí)使用同一個(gè)指針指向不明,在有些函數(shù)里還定義 了一些臨時(shí)指針。其主要思路是:輸入姓名密碼后,將姓名放到一個(gè)臨時(shí)數(shù)組中,讓point指到head_point的位置,使用point = point->next在鏈表中移動(dòng)指針,用strcmp(a,b) 找到與臨時(shí)數(shù)組中字符相同的point->ReaderName,再對(duì)其所在的類進(jìn)行修改、刪除、查看等一系列操作。2、書(shū)庫(kù)信息:該部分內(nèi)容最豐富,下設(shè)子菜單,包括a. 新書(shū)入庫(kù)b. 查找c刪除d. 修改e. 顯示全部在架書(shū)f. 返回上一層g. 清空全部圖書(shū)內(nèi)容查

12、找的子菜單包括:a.按書(shū)名查找b.按ISBN號(hào)查找c.按作者查找d.按出 版商查找 e.按出版日期查找f.返回上一層。鏈表的思路也跟讀者信息一樣,從頭結(jié)點(diǎn)開(kāi)始建,每當(dāng)新增加一個(gè)類節(jié)點(diǎn)時(shí), 就把新增結(jié)點(diǎn)加到鏈表尾部,再讓其中的 next指向NULL空,這里沒(méi)有對(duì)鏈表 進(jìn)行排序。查找功能中,幾個(gè)函數(shù)與讀者查詢類似不再贅述,只是把其中的變量 名改了一下,查找方法也與上述方法一致。有關(guān)菜單的制作,就是先顯示菜單,讓用戶輸入選擇,進(jìn)行輸入有效性檢查, 然后用switch來(lái)對(duì)不同的選擇調(diào)用類中不同的函數(shù)。3、借書(shū)/還書(shū):這部分是系統(tǒng)最主要的功能,也是整個(gè)系統(tǒng)實(shí)現(xiàn)中有一定難度的地方,需要建立兩個(gè)類之間的聯(lián)系

13、。GoInto_bor_ret(BookList *book_ptr,ReaderList *reader_ptr)函數(shù),把這兩個(gè)類 的地址傳到函數(shù)中去,函數(shù)中分別又相應(yīng)地定義了兩個(gè)指針?lè)謩e指向這兩個(gè)類, 再調(diào)用類成員函數(shù)或成員指針進(jìn)行數(shù)據(jù)處理,讀者類中(Reade)定義了一個(gè)int y_n變量,記錄了該讀者借了幾本書(shū)(0沒(méi)借,1借了一本,2借了兩本,由于是 小型圖書(shū)館,所以上限為兩本),圖書(shū)類中(Book)定義了一個(gè)int i_o變量(1 為借出,0為在架),記錄了該書(shū)是否被借出,在進(jìn)行借書(shū)時(shí),分別更改兩變量 的記錄,以表明書(shū)從圖書(shū)館借出到了讀者手中,然后再把書(shū)名復(fù)制到讀者中的 book1或

14、book2數(shù)組中,這樣顯示的時(shí)候就可以看到借了什么書(shū)了,另外在其它 函數(shù)中也要根據(jù)兩個(gè)int的變量的值來(lái)判斷書(shū)有沒(méi)有借出等,同樣的,還書(shū)原理 也類似上述。4、其它:主菜單中剩下的3個(gè)選項(xiàng):4幫助 5.退出系統(tǒng)6有關(guān)該系統(tǒng)的一些說(shuō)明, 都是些文字說(shuō)明,方便用戶有不懂的地方時(shí)參考看一下,可能幫助里面寫(xiě)得不是 很詳細(xì),以后有機(jī)會(huì)慢慢補(bǔ)充吧。選了退出系統(tǒng)后,將對(duì)文件進(jìn)行保存,就是把新的修改過(guò)的鏈表放到指定文 件中覆蓋原來(lái)的鏈表以更新文件, 所以必須要正常退出,不然直接按窗口的關(guān)閉 的話就不會(huì)保存修改后的鏈表了。七. 比較有特色的函數(shù)有特色的函數(shù)指的是實(shí)現(xiàn)地較為巧妙的類的構(gòu)造函數(shù)、成員函數(shù)、友元函數(shù) 等函數(shù),也可以是指針處理的函數(shù),文件處理的函數(shù)等比較有特色的函數(shù),能體 現(xiàn)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論