




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1. 題目要求圖書管理信息包括:圖書名稱、圖書編號、單價、作者、存在狀態(tài)、借書人姓名、性別、學(xué)號等,試設(shè)計一圖書管理系統(tǒng),使之能提供以下功能:(1) 新圖書基本信息的輸入。(2) 圖書基本信息的查詢。(3) 對撤銷圖書信息的刪除。(4) 辦理借書的手續(xù)。(5)辦理還書的手續(xù)。2. 需求分析這是一個能簡單管理圖書的小型圖書管理系統(tǒng),其中圖書信息包括:書名,作者名,書編號,分類,出版社,價格等。通過這些信息使之提供以下功能:(1) 圖書信息的創(chuàng)建功能。其中圖書信息包括:書名,作者名,書編號,分類,出版社,價格等。(圖書信息用文件保存)(2) 圖書信息查看功能。用來查看各項圖書信息。(3) 圖書信息
2、查找功能。通過已知信息來查找想要的圖書。(4) 圖書信息的刪除??梢詣h除指定圖書。(5) 圖書信息的修改??梢孕薷膱D書的各項信息。(6) 菜單選擇功能,次功能也是圖書信息管理系統(tǒng)的入口,用戶所要進行的各種操作均需要在此模塊中進行選擇并進行調(diào)用其他模塊實現(xiàn)相應(yīng)的功能。3. 總體設(shè)計(1) 數(shù)據(jù)結(jié)構(gòu)圖書管理系統(tǒng)中主要的數(shù)據(jù)結(jié)構(gòu)包含書名、圖書書號、作者名、分類、出版社、出版時間、價格等;在處理過程中各項可以作為一本圖書的不同屬性來進行處理。struct Book /*定義結(jié)構(gòu)體數(shù)組*/char ISBN14; /編號char Name20; /名稱char Author20; /作者char Typ
3、e10; /類型char Pub20; /出版社char Date10; /出版日期float Price; /價格;(2) 模塊分化本系統(tǒng)主要有添加圖書、查找圖書、搜索圖書、刪除圖書、修改圖書幾個基本功能。函數(shù)聲明:int Choose(); /選擇int Add(); /添加圖書int View(); /查找圖書int Search(); /搜索圖書int Delete(); /刪除圖書int Modify(); /修改圖書int menu(); /返回系統(tǒng)4. 詳細設(shè)計流程圖:開始主菜單輸入退出系統(tǒng)修改圖書刪除圖書查找日期查找編號查找作者查找書名查找查看圖書添加圖書4.1主函數(shù)函數(shù)的原型
4、:void main()函數(shù)的功能:調(diào)用菜單,使用各項功能。程序:main()menu();menu()printf(nn*圖書管理系統(tǒng)*nnt1.添加圖書nt2.查看圖書nt3.搜索圖書nt4.刪除圖書nt5.修改圖書nt6.退出程序nn*n);switch (Choose(6)case 1:Add();break;case 2:View();break;case 3:Search();break;case 4:Delete();break;case 5:Modify();break;case 6:exit(0);return 0;Choose(int limit)int n = 0;whi
5、le (n limit)printf(選擇一個項目:);scanf(%d, &n);getchar();return n;顯示菜單的的一系列功能選項輸入n,判斷n是否是16?調(diào)用與n相應(yīng)的模塊YN結(jié)束開始4.2各功能模塊設(shè)計添加圖書信息:函數(shù)原型:void Add()函數(shù)的功能:記錄圖書的各項信息程序:Add()FILE *f;struct Book b;f = fopen(Book.txt, ab);if (f = NULL)printf(File open error!n);exit(0);else Add:printf(請輸入圖書信息,分類標簽:n圖書編號 圖書名稱 作者 圖書類型 出版
6、社 出版日期 圖書價格n);scanf(%s%s%s%s%s%s%f, b.ISBN, b.Name, b.Author, b.Type, b.Pub, b.Date, &b.Price);fwrite(&b, sizeof(struct Book), 1, f);printf(n完成.t1.繼續(xù)添加t2.返回菜單n);switch (Choose(2)case 1:goto Add;break;case 2:fclose(f);menu();break;return 0;開始進入添加圖書菜單輸入輸入1或21退出程序2輸入圖書信息添加成功查看圖書信息函數(shù)的原型:void View()函數(shù)的功能
7、:查看圖書書編號,書名,作者名,類型,出版社,出版日期,價格。程序:View()FILE *f;struct Book b;f = fopen(Book.txt, rb);if (f = NULL)printf(File open error!n);exit(0);elsefread(&b, sizeof(struct Book), 1, f);while (feof(f) = 0)printf(%st%st%st%st%st%st%4.2fn, b.ISBN, b.Name, b.Author, b.Type, b.Pub, b.Date, b.Price);fread(&b, sizeof
8、(struct Book), 1, f);fclose(f);printf(n完成.t1.返回菜單t2.退出程序n);switch (Choose(2)case 1:menu();break;case 2:exit(0);return 0;開始進入查看圖書菜單輸入2輸入1或22退出程序1搜索圖書函數(shù)的原型:void Search()函數(shù)的功能:通過書編號,書名,作者名,類型,出版社,出版日期查找圖書。程序:Search()FILE *f;struct Book b;char s40;int i = 0;f = fopen(Book.txt, rb);if (f = NULL)printf(Fi
9、le open error!n);exit(0);elseprintf(請輸入圖書關(guān)鍵詞查詢:);scanf(%s, s);fread(&b, sizeof(struct Book), 1, f);while (feof(f) = 0)char bi128 = 0 ;strcat(bi, b.ISBN);strcat(bi, b.Name);strcat(bi, b.Author);strcat(bi, b.Type);strcat(bi, b.Pub);strcat(bi, b.Date);if (strstr(bi, s)printf(%st%st%st%st%st%st%4.2fn, b
10、.ISBN, b.Name, b.Author, b.Type, b.Pub, b.Date, b.Price);i+;break;fread(&b, sizeof(struct Book), 1, f);fclose(f);if (i = 0)printf(沒有發(fā)現(xiàn)圖書信息!);elseprintf(%d 發(fā)現(xiàn)信息, i);printf(n完成.t1.返回菜單t2.退出程序n);switch (Choose(2)case 1:menu();break;case 2:exit(0);return 0;進入搜索圖書菜單輸入關(guān)鍵字,搜索是否有相關(guān)字?顯示相關(guān)書籍13YN輸入3輸入1或221輸入1或
11、2退出程序12結(jié)束開始刪除圖書函數(shù)的原型:void Delete()函數(shù)的功能:通過圖書編號或者查詢圖書編號確定圖書,進而刪除圖書。程序:Delete()FILE *i, *o;struct Book b;char s40;printf(你需要圖書編號. 如果你沒有,你可以通過查詢功能獲得.nt1.擁有圖書編號t2.查詢圖書編號n);if (Choose(2) = 2)Search();i = fopen(Book.txt, rb);o = fopen(tempBook.txt, wb);if (i = NULL | o = NULL)printf(File open error!n);exi
12、t(0);elseint c = 0;printf(請輸入你想要刪除的圖書編號:n);scanf(%s, s);fread(&b, sizeof(struct Book), 1, i);while (feof(i) = 0)if (strcmp(s, b.ISBN)fwrite(&b, sizeof(struct Book), 1, o);elsec = 1;fread(&b, sizeof(struct Book), 1, i);fclose(i);fclose(o);remove(book.txt);rename(tempbook.txt, book.txt);if (c)printf(刪
13、除成功.);elseprintf(無效圖書編號.);printf(t1.返回菜單t2.退出程序n);switch (Choose(2)case 1:menu();break;case 2:exit(0);return 0;開始輸入4進入刪除圖書菜單輸入1或212輸入要刪除的圖書編號3判斷有效否?NY刪除成功3輸入1或2?輸入1或2?結(jié)束1212輸入圖書關(guān)鍵字3輸入1或2?21顯示相關(guān)圖書或者沒有發(fā)現(xiàn)圖書3修改圖書信息函數(shù)的原型:void Modify()函數(shù)的功能:通過圖書編號或者查詢圖書編號確定圖書,進而修改圖書。程序:Modify()FILE *i, *o;struct Book b, t
14、;char s40;printf(你需要圖書編號. 如果你沒有, 你可以通過查詢功能獲得.nt1.擁有圖書編號t2.查詢圖書編號n);if (Choose(2) = 2)Search();i = fopen(Book.txt, rb);o = fopen(tempBook.txt, wb);if (i = NULL | o = NULL)printf(File open error!n);exit(0);elseint c = 0;printf(請輸入你想修改的圖書編號:n);scanf(%s, s);printf(請輸入圖書信息,分類標簽:n圖書編號 圖書名稱 作者 圖書類型 出版社 出版日
15、期 圖書價格n);scanf(%s%s%s%s%s%s%f, t.ISBN, t.Name, t.Author, t.Type, t.Pub, t.Date, &t.Price);fread(&b, sizeof(struct Book), 1, i);while (feof(i) = 0)if (strcmp(s, b.ISBN) = 0)c = 1;b = t;fwrite(&b, sizeof(struct Book), 1, o);fread(&b, sizeof(struct Book), 1, i);fclose(i);fclose(o);remove(book.txt);rename(tempbook.txt, book.txt
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 文庫發(fā)布:上班會課件
- 護理專業(yè)教學(xué)課件
- 初中語言賞析教學(xué)課件
- 2024-2025 學(xué)年中小學(xué)學(xué)校工會主席述職報告-
- 寶寶牙齒教學(xué)課件
- 教育機構(gòu)介紹課件模板
- 世界地形教學(xué)課件
- 【德州】2025年山東禹城市教育醫(yī)療衛(wèi)生系統(tǒng)事業(yè)單位招聘人員65人筆試歷年典型考題及考點剖析附帶答案詳解
- 題型05 定量實驗探究-備戰(zhàn)2020年中考化學(xué)實驗題型特訓(xùn)(原卷版)
- 新媒體部筆試題目及答案
- 道路旅客運輸安全生產(chǎn)管理制度x
- 人教(部編版)道德與法治八下5.3基本政治制度教學(xué)設(shè)計
- 黑龍江省2024年普通高校招生體育類本科批院校專業(yè)組投檔分數(shù)線(歷史類)
- 水閘地基施工方案
- 企業(yè)數(shù)字化轉(zhuǎn)型服務(wù)協(xié)議
- 《建立合適邊界:親子教育課件》
- DB37-T 4516-2022 高速公路邊坡光伏發(fā)電工程技術(shù)規(guī)范
- 變電所設(shè)備更換申請報告
- 2023年遺傳學(xué)考試題庫(含答案)
- 課題申報參考:基于多模態(tài)大數(shù)據(jù)的大學(xué)生心理危機預(yù)警機制研究
評論
0/150
提交評論