畢業(yè)設(shè)計(論文)-設(shè)計圖書管理系統(tǒng) .doc_第1頁
畢業(yè)設(shè)計(論文)-設(shè)計圖書管理系統(tǒng) .doc_第2頁
畢業(yè)設(shè)計(論文)-設(shè)計圖書管理系統(tǒng) .doc_第3頁
畢業(yè)設(shè)計(論文)-設(shè)計圖書管理系統(tǒng) .doc_第4頁
畢業(yè)設(shè)計(論文)-設(shè)計圖書管理系統(tǒng) .doc_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

ahead 編 號: 審定成績: 設(shè)計圖書管理系統(tǒng)分 院: 學生姓名: 專 業(yè): 班 級: 學 號: 指導教師: 填表時間:2011年12月先鋒軟件學院學生畢業(yè)設(shè)計(論文)工作自查表(2011年11月下旬 2012年2月上旬檢查)學生姓名逯登騰專業(yè)軟件測試學號200900009536導師姓名況嫦娥職稱講師導師每周指導次數(shù)2每次: 1 小時題目名稱局域網(wǎng)的多媒體教學系統(tǒng)的設(shè)計與實現(xiàn)作息時間上午8時 11 時下午14時 時16晚間20時 21時個人精力實際投入日均工作小時5周均工作小時35缺席天數(shù)0出勤率%100%畢業(yè)設(shè)計(論文)工作進度已完成主要內(nèi)容%待完成主要內(nèi)容%11月 11 日開始資料收集。11月16日開始寫前言,目錄。11月25日開始論文初稿。12月2日完成論文。30%50%80%100%11月17日前言及目錄。11月20日論文正文。11月25日未整理好論文。80%50%20%存在問題工作措施整理資料有些困難,標點符號部分不正確,字體存在些問題。摘要中英對譯語句有點不順,經(jīng)過老師的指點,上網(wǎng)重新收集資料,最終順利完成。指導教師(簽字): 日期: 先鋒軟件學院畢業(yè)論文(設(shè)計)評閱表(指導教師、評閱人用)論文(設(shè)計)名稱局域網(wǎng)的多媒體教學系統(tǒng)的設(shè)計與實現(xiàn)學生姓名逯登騰學號200900009536指導教師或評閱人)姓名況嫦娥序號評審項目指標滿分評分1論文(設(shè)計)完成量論文(設(shè)計)內(nèi)容完成量,難易程度符合教學基本要求202調(diào)查與綜合根據(jù)論文(設(shè)計)任務(wù),能獨立查閱文獻資料和從事其它有關(guān)調(diào)研。有收集、綜合和正確利用各種信息的能力。203論文(設(shè)計)質(zhì)量文章切合選題,材料豐富、內(nèi)容充實,觀點明確、論據(jù)充分、論證嚴格,構(gòu)思完整、層次分明、段落、論題間的銜接自然、舒展。文筆流暢、語言通順、使用專業(yè)術(shù)語準確,圖表清楚,符合要求。504創(chuàng)新有獨特的見解,或有一定應(yīng)用價值10總分評閱人:- -年-月-日創(chuàng)業(yè)創(chuàng)新 知識管理 - - ahead of software and technology編 號:1一、需求分析:6二、概要設(shè)計:61:本系統(tǒng)包括兩個抽象數(shù)據(jù):圖書庫鏈表和借書者鏈表。62:主程序的流程:81選擇系統(tǒng)8三、詳細設(shè)計:9四、調(diào)試分析10五、測試結(jié)果:10六、用戶使用說明書:11一、需求分析:1、圖書管理信息包括:登錄號,書名,作者號,分類號,出版單位,出版時間,價格等。設(shè)計圖書管理系統(tǒng)。2、程序的系統(tǒng)功能:(1)、系統(tǒng)以菜單方式工作;(2)、圖書信息錄入功能;(3)、圖書信息瀏覽功能;(4)、圖書信息查詢功能;(5)、圖書信息刪除與修改。3、測試數(shù)據(jù)(后附)。二、概要設(shè)計:1:本系統(tǒng)包括兩個抽象數(shù)據(jù):圖書庫鏈表和借書者鏈表。(1)定義圖書鏈表類型為:adt abook數(shù)據(jù)對象 d=bi|bi=booktype,i=1n n=o數(shù)據(jù)關(guān)系 r=|(bi-1,bi)=d,i=2n基本操作:insert(n)操作結(jié)果:建立一個長度為n的鏈表或插入n個新結(jié)點。del(n)操作結(jié)果:從已建立鏈表中刪除n個結(jié)點。print( )操作結(jié)果:輸出已建立鏈表。search( )操作結(jié)果:按要求查找并輸出已建立鏈表中的結(jié)點。borrow( )操作結(jié)果:按要求改變已建立鏈表中某一結(jié)點的相關(guān)信息 。return( ) 操作結(jié)果:按要求改變已建立鏈表中某一結(jié)點的相關(guān)信息 。(2)定義圖書鏈表類型為:adt aborrow數(shù)據(jù)對象 d=ri|ri|borrowtype,i=1n n=1數(shù)據(jù)關(guān)系 r=|ri-1,ri=d,i=2n基本操作:creat(n) 操作結(jié)果:建立一個長度為n的鏈表。insert(n)操作結(jié)果:插入n個新結(jié)點到已建立鏈表中。remove(n)操作結(jié)果:從已建立鏈表中刪除n個結(jié)點。2:主程序的流程:1選擇系統(tǒng)(1)、錄入圖書信息(2)、瀏覽圖書信息(3)、圖書信息查詢功能:1按登錄號查詢2按書名查詢3按作者名查詢4按分類號查詢5按出版單位查詢6按價格查詢(4)、圖書信息刪除與修改1刪除2修改(0)、返回圖書信息管理系統(tǒng) 返回圖書信息刪除與修改圖書信息瀏覽圖書信息查詢圖書信息錄入按書名查找三、詳細設(shè)計:struct book char dlnum10; /*登錄號/* char name50; /*書名/* char writer20; /*作者名/* char flnum10; /*分類號/* char pressname50; /*出版單位/* char presstime20; /*出版時間/* char price10; /*價格/*booksn; 四、調(diào)試分析1在最初進行模塊劃分是未將借書人信息管理作為一個單獨摸塊,致使調(diào)試時無法明確管理結(jié)借書者信息,造成書目鏈表混亂,重新分配后解決了這個問題2 原先想進行中文書名及人命輸入輸出,但由于未能找到相關(guān)信息資料,無法完成該操作,最終放棄該設(shè)計3 最初我們曾規(guī)定了一些變量以及結(jié)構(gòu)體,但隨著設(shè)計的進行深化,最初的結(jié)構(gòu)體及變量無法滿足需要,致使調(diào)試時出現(xiàn)不少混亂,后來我們重新規(guī)定了一下,解決了這些問題;4 程序的串聯(lián)我們采取了循環(huán)控制與選擇結(jié)構(gòu)相結(jié)合的結(jié)構(gòu)很好地解決了系統(tǒng)長時間運行及循環(huán)執(zhí)行命令的問題,使演示系統(tǒng)現(xiàn)實化。五、測試結(jié)果:1、 在windows狀態(tài)下,2、 執(zhí)行tc文件,3、 進入系統(tǒng)操作界面。4、 選擇系統(tǒng)選項,5、 進行圖書管理操作。進入后根據(jù)提示信息可進行。0退回界面。 六、用戶使用說明書:1選擇操作類型,例選擇1錄入圖書信息 2瀏覽已經(jīng)錄入的圖書信息 選擇3為圖書信息查詢項(1)按登陸號(2)按書名(3)按作者(4)按分類號(5)出版單位(6)出版時間(7)價格選擇4為刪除和修改功能 1為刪除2為修改首先歡迎您使用本圖書館管理系統(tǒng)。本系統(tǒng)主要面向圖書館的管理人員。運行主程序后,您將能夠看到一個帶有歡迎界面的窗口,上面有您所能進行的操作,您可以在這里選擇。(附)源程序:#define n 100#include#include#includestruct book char dlnum10; char name50; char writer20; char flnum10; char pressname50; char presstime20; char price10;booksn;void printf_face() printf(dlnum name writer flnum pressname presstime pricen);void enter() int i,n; void menu(); void input(int k); void save(int k); printf(how many books(0-%d)?:,n-1); scanf(%d,&n); printf(n enter data nownn); for(i=0;in;i+) printf(n input %dth book record.n,i+1); input(i); if(i!=0)save(n); printf(pass any key to backn); getchar(); menu();void input(int i) printf_face(); scanf(%s%s%s%s%s%s%s,booksi.dlnum,,booksi.writer,booksi.flnum,booksi.pressname,booksi.presstime,booksi.price);void save(int n) file *fp; int i; if(fp=fopen(book.txt,wb)=null) printf(ncannot open filen); for(i=0;in;i+) if(fwrite(&booksi,sizeof(struct book),1,fp)!=1) printf(file write erron); fclose(fp);void browse() int k; void menu(); int load(); void printf_books(int n); k=load(); printf_books(k); printf(pass any key to backn); getchar(); menu();void printf_one(int i)printf(%5s %5s %5s %5s %5s %5s %5s,booksi.dlnum,,booksi.writer,booksi.flnum,booksi.pressname,booksi.presstime,booksi.price);printf(nn);void printf_books(int n) int j; printf(dlnum name writer flnum press presstime pricen); for(j=0;jn;j+) if(j!=0&j%10=0) printf(nnpass any key to contiune .); getchar(); puts(nn); printf_one(j); int load() file *fp; int i; if(fp=fopen(book.txt,rb)=null) printf(ncannot open filen); return 0; for(i=0;!feof(fp);i+) fread(&booksi,sizeof(struct book),1,fp); fclose(fp); return(i-1);void search_by_name()struct book s;int n,i,k=0;int load();void printf_one(int i);n=load();printf(enter a book name: );scanf(%s,&); for(i=0;in;i+) if(strcmp(,)=0) printf_one(i); k=1; if(k=0)printf(nnot found the file!n);void search_by_writer() struct book s;int n,i,k=0;int load();void printf_one(int i);n=load();printf(enter a writers name: );scanf(%s,&s.writer); for(i=0;in;i+) if(strcmp(s.writer,booksi.writer)=0) printf_one(i); k=1; if(k=0)printf(nnot found the file!n);void search_by_flnum() struct book s; int n,i,k=0; int load(); void printf_one(int i); n=load(); printf(enter a flnum: ); scanf(%s,&s.flnum); for(i=0;in;i+) if(strcmp(s.flnum,booksi.flnum)=0) printf_one(i); k=1; if(k=0)printf(nnot found the file!n);void search_by_press() struct book s; int n,i,k=0; int load(); void printf_one(int i); n=load(); printf(enter a press: ); scanf(%s,&s.pressname); for(i=0;in;i+) if(strcmp(s.pressname,booksi.pressname)=0) printf_one(i); k=1; if(k=0)printf(nnot found the file!n);void search_by_dlnum() struct book s; int n,i,k=0; int load(); void printf_one(int i); n=load(); printf(enter a dlnum: ); scanf(%s,&s.dlnum); for(i=0;in;i+) if(strcmp(s.dlnum,booksi.dlnum)=0) printf_one(i); k=1;if(k=0)printf(nnot found the file!n);menu_search() int n,w; do puts(tt*menu of search*nn); puts(tttt 1.search_by_name); puts(tttt 2.search_by_writer); puts(tttt 3.search_by_dlnum); puts(tttt 4.search_by_flnum); puts(tttt 5.search_by_press); puts(tttt 6.back); puts(nntt*n); printf(choice your number(1-6): bb); scanf(%d,&n); if(n6) w=1; getchar(); else w=0; while(w=1); switch(n) case 1:search_by_name();break; case 2:search_by_writer();break; case 3:search_by_dlnum();break; case 4:search_by_flnum();break; case 5:search_by_press();break; case 6:menu(); void printf_back() int w; do printf(what do you want to do?nnt1).back to menut2)continue .: bb); scanf(%d,&w); switch(w) case 1: menu();break; case 2: menu_search();break; while(w!=1&w!=2);void search() menu_search(); printf_back();void modify(int m,int n) int c,w1; void menu(); do puts(nmodify by =nn 1).dlnum 2).name 3).writer 4).flnumn5).pressname 6).presstime 7).price 8).modify all); printf(which you need?: bb); scanf(%d,&c); if(c8|c8|c1); do switch(c) case 1:printf(dlnum: );scanf(%s,booksm.dlnum);break;case 2:printf(name: );scanf(%s,);break;case 3:printf(writer: );scanf(%s,booksm.writer);break;case 4:printf(flnum: );scanf(%s,booksm.flnum);break;case 5:printf(pressname: );scanf(%s,booksm.pressname);break;case 6:printf(presstime: );scanf(%s,booksm.presstime);break;case 7:printf(price: );scanf(%s,booksm.price);break;case 8:printf(enter a new information:n);input(m); printf_face(); printf_one(m); printf(nare you sure?nnt1).sure 2).no and remodify 3).back without save in this time bb); scanf(%d,&w1); while(w1=2); if(w1=1)save(n);void del(int m,int n) file *fp;int k,w; printf(are you sure delete it?nnt1).suret2).give up: bb); scanf(%d,&w);if(w=1) if(fp=fopen(book.txt,wb)=null) printf(ncannot open filen); for(k=0;kn;k+) if(k!=m)if(fwrite(&booksk,sizeof(struct book),1,fp)!=1) printf(file write errorn); fclose(fp); void deal() void menu(); int w,i,m,n,k=0; struct book s; n=load(); printf_books(n); printf(enter a book name: );scanf(%s,&); for(i=0;in;i+) if(strcmp(,)=0) printf_one(i); k=1;m=i; if(k=0) printf(not found the file!); getchar(); menu(); printf(what do you want to do?nnt1).modifyt2).delete: bb); scanf(%d,&w); switch(w) case 1: modify(m,n);break; ca

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論