數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告15頁_第1頁
數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告15頁_第2頁
數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告15頁_第3頁
數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告15頁_第4頁
數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告15頁_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 竭誠為您提供優(yōu)質(zhì)文檔/雙擊可除數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告篇一:數(shù)據(jù)結(jié)構(gòu)-圖書管理系統(tǒng)實(shí)驗(yàn)報告數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告課程名稱_題目名稱學(xué)生學(xué)院專業(yè)班級學(xué)號學(xué)生姓名指導(dǎo)教師20XX年7月8日一、需求分析1.圖書管理系統(tǒng)中圖書管理模塊包括圖書類型定義:書號、現(xiàn)存量、總存量,出版時間為整型,定價為浮點(diǎn)型,書名、著者名為字符型,借閱指針、預(yù)約指針為讀者類型;讀者類型定義:證號為整型、姓名為字符型,另外借閱類型和預(yù)約類型組合成其中的共用體類型。b樹(2-3樹)類型定義:關(guān)鍵字個數(shù)和關(guān)鍵字?jǐn)?shù)組為整型、另外還有指向雙親的指針、指向子樹的指針、記錄單元指針;b樹查找結(jié)果類型定義:節(jié)點(diǎn)指針、關(guān)鍵字序號和查找標(biāo)志

2、變量為整型。2.演示程序以用戶和計算機(jī)的對話方式進(jìn)行,在計算機(jī)終端上顯示“提示信息”之后,由用戶在鍵盤上輸入演示程序中規(guī)定的運(yùn)算命令,相應(yīng)的輸入數(shù)據(jù)和運(yùn)算結(jié)果顯示在后面。該演示系統(tǒng),沒有使用文件,全部數(shù)據(jù)放在內(nèi)存存放。四項(xiàng)基本業(yè)務(wù)都以書號為關(guān)鍵字進(jìn)行的,采用了b樹(2-3樹)對書號建立索引,以提高效率。3.圖書管理系統(tǒng)實(shí)現(xiàn)功能:采編入庫:新書購入,將書號、書名、著者、冊數(shù)、出版時間添加入圖書賬目中去,如果這種書在帳中已有,則只將總庫存量增加,每新增一個書號則以凹入表的形式顯示b樹現(xiàn)狀。清除庫存:實(shí)現(xiàn)某本書的全部信息刪除操作,每清除一個書號則已以凹入表的形式顯示b樹現(xiàn)狀。圖書借閱:如果書的庫存量

3、大于零時則執(zhí)行出借,登記借閱者的圖書證號和姓名,系統(tǒng)自動抓取當(dāng)前借閱時間和計算歸還時間。圖書預(yù)約:如果某書庫存為零,則記錄預(yù)約者姓名和證號,系統(tǒng)自動抓取當(dāng)前預(yù)約時間和取書時間。圖書歸還:注銷借閱者信息,并改變該書的現(xiàn)存量。作者專區(qū):輸入作者名字,系統(tǒng)將查找相應(yīng)作者全部著作并顯示出來。圖書信息:可以根據(jù)書號查閱此書基本信息、借閱信息和預(yù)約信息,亦可以查找全部圖書基本信息。二、概要設(shè)計1.抽象數(shù)據(jù)類型b樹定義:ADTbTree數(shù)據(jù)對象:D是具有相同特性的數(shù)據(jù)元素的集合。各個數(shù)據(jù)元素均含有類型相同,可惟一標(biāo)識數(shù)據(jù)元素的關(guān)鍵字。數(shù)據(jù)關(guān)系:數(shù)據(jù)元素同屬于一個集合并且:一棵m階的b樹,或?yàn)榭眨驗(yàn)闈M足下列

4、特性的m叉樹:樹中每個結(jié)點(diǎn)至多有m棵子樹;若根結(jié)點(diǎn)不是葉子結(jié)點(diǎn),則至少有兩棵子樹;除根之外的所有非終端結(jié)點(diǎn)至少有m/2(取上限)棵子樹;所有的非終端結(jié)點(diǎn)包含下列信息數(shù)據(jù):(n,A0,K1,A1,K2,A2,K3,?,Kn,An)其中:Ki(i=1,2,?n)為關(guān)鍵字,且Kin),An所指子樹中所有結(jié)點(diǎn)的關(guān)鍵字均大于Kn,n(m/2(取上限)-1基本操作:searchbTree(T,key);初始條件:b樹T存在,key為和關(guān)鍵字類型相同的給定值。操作結(jié)果:若T中存在關(guān)鍵字等于key的數(shù)據(jù)元素,則返回該元素的值或在表中的位置,否則返回“空”。Insert(T,i,k,p,recptr)初始條件:

5、b樹q和p存在,i、k是指定變量,recptr指針有效操作結(jié)果:將k和ap分別插入到q->keyi+1和q->ptri+1,并插入關(guān)鍵字為k的記錄recptrInsertbTree(初始條件:b樹T存在,e為待插入的數(shù)據(jù)元素。操作結(jié)果:若T中步存在關(guān)鍵字等于e.key的數(shù)據(jù)元素,則插入e到T中。DeletebTree(初始條件:b樹T存在,key為和關(guān)鍵字類型相同的給定值。操作結(jié)果:若T中存在其關(guān)鍵字等于key的數(shù)據(jù)元素,則刪除之bTreeTraverse(bTreeT,Visit)初始條件:b樹T存在,Visit是對T結(jié)點(diǎn)的函數(shù)操作結(jié)果:遍歷b樹T,對每個結(jié)點(diǎn)調(diào)用Visit函數(shù)s

6、howbTree(T);初始條件:b樹T存在。操作結(jié)果:以凹入表形式顯示b樹T。ADTbTree2.系統(tǒng)時間類型定義:ADTTime數(shù)據(jù)對象:D=Tm是各種整型類型的系統(tǒng)時間格式定義數(shù)據(jù)關(guān)系:數(shù)據(jù)元素同屬一個集合基本操作:getDate(tm操作結(jié)果:初始化書庫L為空書庫。Insertbook(初始條件:書庫L和b已存在,result包含b書在書庫中的位置或應(yīng)該插入的位置。操作結(jié)果:如果書庫中已存在b書,則只將b書的庫存量增加,否則插入b書到書庫L中。Deletebook(初始條件:書庫L和b存在。操作結(jié)果:如果書庫中存在b書,則從書庫中刪除b書的信息,并返回oK,否則返回eRRoRborro

7、wbook(L,初始條件:書庫L存在,b書是書庫中的書并且可被讀者R借閱。操作結(jié)果:借出一本b書,記錄信息。Returnbook(L,初始條件:書庫L存在。操作結(jié)果:若書庫L中有讀者R借閱b書的記錄,則注銷該記錄,改變b書現(xiàn)存量,并返回oK,書不存在或無該讀者記錄則返回eRRoR。bespeakbook(L,初始條件:書庫L存在,b書是書庫中的書,R為借閱者。操作結(jié)果:為讀者R預(yù)約b書。ListAuthor(L,author);初始條件:書庫L存在,author為指定作者姓名操作結(jié)果:顯示author的所有著作。showbookinfo(L,b);初始條件:書L存在。操作結(jié)果:若書庫L中存在書

8、b,則顯示b書基本信息并返回oK,否則返回eRRoR。printAllbooks(L);初始條件:書庫L存在。操作結(jié)果:顯示所有圖書基本信息。ADTbTree3.主程序intmain()系統(tǒng)界面;初始化;for(;)顯示菜單信息;接受命令;處理命令;輸出結(jié)果;|4.本程序有四個調(diào)用模塊主程序模塊圖書管理模塊b樹單元模塊系統(tǒng)時間模塊三、詳細(xì)設(shè)計抽象數(shù)據(jù)類型b樹算法詳解/*抽象數(shù)據(jù)類型b-樹存儲定義*/typedefbooknodeRecord;/記錄指針為圖書結(jié)點(diǎn)類型typedefstructbTnodeintkeynum;/結(jié)點(diǎn)關(guān)鍵字個數(shù)structbTnode*parent;/指向雙親指針i

9、ntkeym+1;/(:數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)實(shí)驗(yàn)報告)關(guān)鍵字?jǐn)?shù)組,0號單元未用structbTnode*ptrm+1;/指向子樹指針Record*recptrm+1;/記錄指針,0號單元未用bTnode,*bTree;/b樹節(jié)點(diǎn)類型和b樹類型typedefstructbTnode*pt;/指向找到的結(jié)點(diǎn)或應(yīng)該插入的結(jié)點(diǎn)inti;/1.m,在結(jié)點(diǎn)中關(guān)鍵字序號inttag;/1表示查找成功,0表示查找失敗Result;/b樹查找結(jié)果類型/*/*b-樹操作定義*/intsearch(bTreep,intk)/*在b樹p中查找關(guān)鍵字k的位置i,使得p->nodei.keyKp->nodei

10、+1.key*/ResultsearchbTree(bTreeT,intk)/在m階b樹T上查找關(guān)鍵字K,返回結(jié)果(pt,i,tag)。若查找成功,則特征值/tag=1,指針pt所指結(jié)點(diǎn)中第i個關(guān)鍵字等于K;否則特征值tag=0,等于K的/關(guān)鍵字應(yīng)插入在指針pt所指結(jié)點(diǎn)中第i和第i+1個關(guān)鍵字之間。inti;for(i=0;ikeynumi+);returni;篇二:數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告圖書館管理系統(tǒng)數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計報告(20XX-20XX年度第2學(xué)期)圖書館管理系統(tǒng)學(xué)院英才實(shí)驗(yàn)學(xué)院張浩然20XX00104020XX001040008陳端兵20XX.6學(xué)生姓名班學(xué)級號指導(dǎo)教師完成日期1.

11、1課程設(shè)計目的鞏在圖書館中,當(dāng)借書人員越來越多時,對圖書館圖書管理是一項(xiàng)瑣碎、復(fù)雜而又需要十分認(rèn)真的工作,對圖書館圖書借出和還回圖書及剩余圖書信息的統(tǒng)計工作量很大,但又是不允許出錯的,如果實(shí)行手工操作,每天借出圖書和還回圖書信息需要手工填寫大量的表格,這就會耗費(fèi)圖書館管理員大量的時間和精力。為了減輕圖書館管理員的負(fù)擔(dān),提高工作效率,同時也為了提高圖書館的現(xiàn)代化服務(wù)水平,因此,我們用所學(xué)的c#知識做了一個圖書館信息管理系統(tǒng),讓我們可以很好的利用圖書館信息管理系統(tǒng)來登記圖書館圖書信息。固并加深學(xué)生對c+語言程序設(shè)計知識的理解;1.2課程設(shè)計內(nèi)容1)利用c語言設(shè)計一個圖書館管理系統(tǒng)。2)基本要求:1

12、:管理員登陸后,可以進(jìn)行的操作(1)添加學(xué)生的信息(學(xué)號,姓名,院系,最大借閱的圖書數(shù)量等);(2)修改學(xué)生的信息(學(xué)號,姓名,院系,最大借閱的圖書數(shù)量);(3)刪除學(xué)生的信息(學(xué)號,姓名,院系,最大借閱的圖書數(shù)量),如果某個學(xué)生退學(xué),就要清除他的信息;(4)查看學(xué)生的信息;(5)添加圖書的信息(圖書號,書名,作者,出版社,數(shù)量等);(6)修改圖書的信息(圖書號,書名,作者,出版社,數(shù)量等);(7)刪除圖書的信息(圖書號,書名,作者,出版社,數(shù)量等);(8)查看圖書的信息;2:學(xué)生登陸后,可以進(jìn)行的操作(1)查看學(xué)生自己借閱的數(shù)目信息;(2)借閱圖書;(3)歸還圖書;(備注:要求將學(xué)生和圖書信

13、息存放到外存上,每次從外存讀取數(shù)據(jù)。)12系統(tǒng)需求分析2.1系統(tǒng)目標(biāo)實(shí)現(xiàn)一個留言板2.2主體功能1留言能選擇保存路徑2.能簽署留言日期3.能選擇留言打開路徑并閱讀留言4.能轉(zhuǎn)存留言。2.3開發(fā)環(huán)境Vc+6.0,c#環(huán)境3邏輯設(shè)計方案(1)圖書管理系統(tǒng)概念模型2圖2-1圖書管理系統(tǒng)的整體e-R圖(2)圖書管理系統(tǒng)邏輯模型讀者信息:(讀者編號、姓名、單位、性別、讀者類別名、登記時間、已借書數(shù)量、電話、住址、超期次數(shù))讀者類別信息:(讀者類別名、可借書數(shù)量、借書日期)書籍信息:(圖書編號、書名、作者、類別編號、出版社、出版日期、入庫時間、館藏數(shù)量、可借復(fù)本、價格)書籍類別信息:(類別編號、圖書類別名

14、)3篇三:數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)課程設(shè)計報告一、設(shè)計題目與要求【問題描述】設(shè)計一個計算機(jī)管理系統(tǒng)完成圖書管理基本業(yè)務(wù)?!净疽蟆浚?)每種書的登記內(nèi)容包括書號、書名、著作者、現(xiàn)存量和庫存量;(2)對書號建立索引表(線性表)以提高查找效率;(3)系統(tǒng)主要功能如下:采編入庫:新購一種書,確定書號后,登記到圖書帳目表中,如果表中已有,則只將庫存量增加;借閱:如果一種書的現(xiàn)存量大于0,則借出一本,登記借閱者的書證號和歸還期限,改變現(xiàn)存量;歸還:注銷對借閱者的登記,改變該書的現(xiàn)存量。二、小組分工小組成員:小組分工:圖書初始化、新書入庫、登記讀者信息、文件保存借書系統(tǒng)、還書系統(tǒng)圖書信息查詢、讀者信息查詢?nèi)?/p>

15、、需求分析圖書管理系統(tǒng)共需要八個模塊,分別是1圖書初始化、2新書入庫、3添加讀者信息、4借書模塊、5還書模塊、6查詢圖書信息、7查詢讀者信息、8退出。我負(fù)責(zé)其中的四個模塊,如下所示:1)圖書初始化輸入圖書的一些信息,編號、作者、書名、數(shù)量,使有一定的庫存。2)新書入庫新書采編入庫,輸入編號后如果有次數(shù)只需輸入數(shù)量,沒有則繼續(xù)輸入書名、作者、數(shù)量。3)添加讀者信息讀者信息初始化,輸入讀書證號和姓名,只有輸入書證號和姓名才能進(jìn)行借書還書4)退出和文件保存退出讀書管理系統(tǒng)并保存讀者和圖書信息。1四、概要設(shè)計圖書信息和讀者信息都采用結(jié)構(gòu)體類型保存。圖書信息里面包括:圖書編號、圖書名稱、作者、現(xiàn)有量、庫存量、指向下一節(jié)點(diǎn)的指針。讀者信息里面包括:讀者編號、讀者姓名、借書數(shù)量、可借圖書數(shù)量、指向下一節(jié)點(diǎn)的指針。所有圖書和讀者都分別以鏈表的形式存儲,并以編號為唯一主鍵。采用鏈表形式便于數(shù)據(jù)的添加與刪改。主要的操作為:系統(tǒng)初始化,圖書入庫,讀者信息登記,圖書信息和讀者信息文件的保存。五、詳細(xì)設(shè)計數(shù)據(jù)結(jié)構(gòu)的定義:圖書信息:typedefstructbook2charbook_num10;charbook_na

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論