![C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/14/4eaba099-1a02-4b73-9c5c-c736daead075/4eaba099-1a02-4b73-9c5c-c736daead0751.gif)
![C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/14/4eaba099-1a02-4b73-9c5c-c736daead075/4eaba099-1a02-4b73-9c5c-c736daead0752.gif)
![C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/14/4eaba099-1a02-4b73-9c5c-c736daead075/4eaba099-1a02-4b73-9c5c-c736daead0753.gif)
![C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/14/4eaba099-1a02-4b73-9c5c-c736daead075/4eaba099-1a02-4b73-9c5c-c736daead0754.gif)
![C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/14/4eaba099-1a02-4b73-9c5c-c736daead075/4eaba099-1a02-4b73-9c5c-c736daead0755.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課 程 設(shè) 計(jì) 報(bào) 告課程名稱 C語(yǔ)言課程設(shè)計(jì) 課題名稱 圖書(shū)管理系統(tǒng) 專 業(yè) 電氣工程及其自動(dòng)化 班 級(jí) 學(xué) 號(hào) 姓 名 指導(dǎo)教師 2016 年 12 月 20日湖南工程學(xué)院課 程 設(shè) 計(jì) 任 務(wù) 書(shū)課程名稱 C語(yǔ)言課程設(shè)計(jì) 課 題 圖書(shū)管理系統(tǒng) 專業(yè)班級(jí) 電氣1604 學(xué)生姓名 學(xué) 號(hào) 指導(dǎo)老師 審 批 二、進(jìn)度安排星期時(shí)間班級(jí)內(nèi)容地點(diǎn)第16周二7-8節(jié)電氣1604布置任務(wù)D600第17周二下午2:00-5:50電氣1604布置任務(wù)D600第17周三下午2:00-5:50電氣1604布置任務(wù)D600第17周四下午2:00-5:50電氣1604布置任務(wù)D600第17周五下午2:00-5:50
2、電氣1604布置任務(wù)D600湖南工程學(xué)院計(jì)算機(jī)科學(xué)系2016年12月 13 日目 錄1 題目要求2 分析3 總體設(shè)計(jì)4 詳細(xì)設(shè)計(jì)5運(yùn)行與測(cè)試報(bào)告 C 語(yǔ)言程序設(shè)計(jì)編程實(shí)踐是學(xué)習(xí)C語(yǔ)言程序設(shè)計(jì)的一重要環(huán)節(jié),上機(jī)實(shí)習(xí)和課程設(shè)計(jì)是提高同學(xué)們程序設(shè)計(jì)能力的有效途徑,能夠使同學(xué)們初步掌握程序設(shè)計(jì)的基本方法和調(diào)試技能。學(xué)校安排上機(jī)時(shí)間有限,老師也只能教給我們一些方法,而我們自己需要投入很大的時(shí)間和精力來(lái)鍛煉。1、題目要求設(shè)計(jì)“圖書(shū)信息管理系統(tǒng)”要求:圖書(shū)信息包括:登錄號(hào),書(shū)名,作者名,分類(lèi)號(hào),出版單位,出版時(shí)間,價(jià)格等。使之提供以下功能:(1) 系統(tǒng)以菜單方式工作。(2) 圖書(shū)信息錄入功能。(圖書(shū)信息用文
3、件保存)。(3) 圖書(shū)信息瀏覽功能。(4) 圖書(shū)信息查詢功能。(5) 圖書(shū)信息的刪除和修改。2、分析:根據(jù)題目要求,應(yīng)當(dāng)把圖書(shū)信息用結(jié)構(gòu)體形式輸入,再定義一個(gè)全局變量和文件指針進(jìn)行整個(gè)程序的運(yùn)行,然后把圖書(shū)信息送到文件中,所以應(yīng)該提供一個(gè)結(jié)構(gòu)體和文件的輸入輸出等操作;在程序中需實(shí)現(xiàn)圖書(shū)信息錄入,瀏覽,查詢,刪除和修改等功能的操作,所以需要建立相應(yīng)的模塊來(lái)實(shí)現(xiàn);另外還需提供鍵盤(pán)式選擇菜單實(shí)現(xiàn)功能,在運(yùn)行時(shí)達(dá)到所要目的。3、總體設(shè)計(jì): 根據(jù)題目要求,可以將系統(tǒng)分為六個(gè)模塊:(1) 管理員登錄系統(tǒng)模塊。(2) 菜單選擇模塊。(3) 圖書(shū)信息錄入功能模塊。(4) 圖書(shū)信息瀏覽功能。(5) 圖書(shū)信息查詢
4、功能。(6) 圖書(shū)信息的刪除和修改。 第1頁(yè)管理員登錄系統(tǒng)模塊菜單選擇模塊。菜單選擇模塊。菜單選擇模塊。菜單菜單選擇模塊。(1) 擇模塊。圖書(shū)信息錄入功能模塊圖書(shū)信息瀏覽功能模塊圖書(shū)信息查詢功能模塊圖書(shū)信息的刪除和修改圖書(shū)信息管理系統(tǒng)第 2頁(yè)4、詳細(xì)設(shè)計(jì):頭函數(shù)名:#include#include#include/*圖書(shū)信息結(jié)構(gòu)體*/*包括登錄號(hào),書(shū)名,作者名,分類(lèi)號(hào),出版單位,出版時(shí)間,價(jià)格等*/struct bookinf int num; *登錄號(hào) char bname20;* 書(shū)名 char wname10;* 作者名 char clanum14;* 分類(lèi)號(hào) char pubcom10
5、;* 出版單位 char pubtime10;* 出版時(shí)間 float price;* 價(jià)格;一管理員登錄系統(tǒng)模塊:(1) 來(lái)到圖書(shū)信息管理系統(tǒng)頁(yè)面void index() char input; 注釋:運(yùn)行時(shí) printf(nnttt*n); 直接進(jìn)入 printf(ttt 圖書(shū)信息管理系統(tǒng)n); 這個(gè)頁(yè)面 printf(ttt*nnn); printf( -n); printf(tnt); input=getchar(); (2) 管理員登陸進(jìn)入功能菜單頁(yè)面第3 頁(yè) 開(kāi)始輸入管理員帳號(hào)和密碼輸入正確與否進(jìn)入功能菜單頁(yè)面結(jié)束NFILE *fp;struct manage pswd; if (
6、fp=fopen(password.txt,r)=NULL) printf(nnntCannot open file!nt); else do printf(nnt請(qǐng)輸入管理員帳號(hào):); scanf(%s,name); printf(nnt請(qǐng)輸入管理員密碼:); scanf(%s,password); fp=fopen(password.txt,r); fread(&pswd,sizeof(struct manage),1,fp); fclose(fp); w=strcmp(pswd.manage_name,name); k=strcmp(pswd.password,password); ad
7、m_servelist(); while (w!=0|k!=0); adm_servelist(); 第 4 頁(yè)(3)來(lái)到功能菜單頁(yè)面void adm_servelist() void book_add(); void book_view(); void change(); void del(); void book_search(); void login(); void pwchange(); int in; 注釋:菜單列出的服務(wù)種類(lèi) char input; 從1,2,3,4,5,6 do 所對(duì)應(yīng)的功能進(jìn)行選擇 printf(nnnt-歡迎使用信息管理系統(tǒng)-); printf(nnt1.圖
8、書(shū)信息錄入n); printf(t2.圖書(shū)信息瀏覽n); printf(t3.圖書(shū)信息查詢n); printf(t4.圖書(shū)信息刪除n); printf(t5.圖書(shū)信息修改n); printf(t6.退出管理模式n); printf(nt請(qǐng)選擇服務(wù)種類(lèi):); scanf(%d,&in); if (in!=1&in!=2&in!=3&in!=4&in!=5&in!=6) printf(nt沒(méi)有這項(xiàng)服務(wù)n); printf(t按任意鍵重新選擇); input=getchar(); while (in!=1&in!=2&in!=3&in!=4&in!=5&in!=6); switch (in) cas
9、e 1: book_add(); break; 注釋:選擇自己所需要 case 2: book_view(); break; 后摁下數(shù)字鍵則 case 3: book_search(); break; 則進(jìn)入此功能頁(yè)面 case 4: del(); break; case 5: change();break; case 6: login(); break; 第 5 頁(yè)(4)圖書(shū)信息錄入功能模塊void book_add() void adm_servelist(); void book_add(); int i=0,j; FILE *fp; char input; 注釋:輸入的圖書(shū)信息 str
10、uct bookinf books; 是通過(guò)文件進(jìn)行 struct bookinf book_taxis30; 保存的 printf(nnnt-請(qǐng)輸入圖書(shū)信息-nn); printf(t登錄號(hào):); scanf(%d,&books.num); printf(nt書(shū)名:); scanf(%s,books.bname); printf(nt作者名:); scanf(%s,books.wname); printf(nt分類(lèi)號(hào):); scanf(%s,books.clanum); printf(nt出版單位:); scanf(%s,books.pubcom); printf(nt出版時(shí)間:); sca
11、nf(%s,books.pubtime); printf(nt價(jià)格:); scanf(%f,&books.price); if (fp=fopen(book.txt,r)!=NULL) do fread(&book_taxisi,sizeof(struct bookinf),1,fp); i=i+1; while(!feof(fp); fclose(fp); for (j=0;j=i;j+) if (books.num=book_taxisj.num) printf(nnnt對(duì)不起,這個(gè)編號(hào)已經(jīng)使用過(guò)了n); printf(t按任意鍵返回管理菜單); input=getchar(); adm_
12、servelist(); break; 第 6頁(yè) if (fp=fopen(book.txt,r)=NULL) fp=fopen(book.txt,w); else fclose(fp); fp=fopen(book.txt,a); fwrite(&books,sizeof(struct bookinf),1,fp); fclose(fp); printf(nnnt信息輸入完畢按任意鍵繼續(xù)n); input=getchar(); adm_servelist();(3) 圖書(shū)信息瀏覽功能模塊void book_view() void adm_servelist(); void book_view
13、(); int inp,i=0,n=0; FILE *fp; char input; struct bookinf bookview20; if (fp=fopen(book.txt,r)=NULL) printf(nnnt數(shù)據(jù)尚未初始化nnt請(qǐng)?jiān)诠芾聿藛沃性黾訄D書(shū)信息n); printf(ntnt); input=getchar(); adm_servelist(); else do fread(&bookviewi,sizeof(struct bookinf),1,fp); i=i+1; while (!feof(fp); fclose(fp); do 第 7 頁(yè) printf(nt-共有
14、%d條記錄-,i-1); printf(nnt登錄號(hào): %dn,bookviewn.num); printf(nt書(shū)名: %sn,bookviewn.bname); printf(nt作者名: %sn,bookviewn.wname); printf(nt分類(lèi)號(hào): %sn,bookviewn.clanum); printf(nt出版單位: %sn,bookviewn.pubcom); printf(nt出版時(shí)間: %sn,bookviewn.pubtime); printf(nt價(jià)格: %fn,bookviewn.price); printf(nnt1.上一頁(yè)t2.下一頁(yè)t3.回目錄n); p
15、rintf(nt請(qǐng)選擇:); scanf(%d,&inp); switch (inp) case 1: if (n=0) printf(nt已到達(dá)首頁(yè)nt按任意鍵重新選擇); input=getchar(); else n=n-1; break; case 2: if (n=i-2) printf(nt已到達(dá)最末頁(yè)nt按任意鍵重新選擇); input=getchar(); else n=n+1; break; case 3: adm_servelist(); break; default: printf(nt沒(méi)有這項(xiàng)服務(wù)nt按任意鍵重新選擇); input=getchar(); 第 8 頁(yè) w
16、hile (inp!=3);(4) 圖書(shū)信息修改與刪除功能模塊修改: void change(int x) int inp,i=0,j; void book_search(); FILE *fp,*fp1; char input; struct bookinf books,book_taxis20; do printf(nnnt注意:您確定要修改該記錄嗎?n); printf(nt1.是t2.否n); printf(nt請(qǐng)輸入:); scanf(%d,&inp); if (inp!=1&inp!=2) printf(nt對(duì)不起沒(méi)有這項(xiàng)服務(wù)n); printf(t按任意鍵重新選擇nt); inp
17、ut=getchar(); while (inp!=1&inp!=2); if (inp=2) book_search(); if (inp=1) printf(nnnt-請(qǐng)輸入圖書(shū)信息-nn); printf(t登錄號(hào):); scanf(%d,&books.num); printf(nt書(shū)名:); scanf(%s,books.bname); printf(nt作者名:); scanf(%s,books.wname); printf(nt分類(lèi)號(hào):); scanf(%s,books.clanum); printf(nt出版單位:);第 9 頁(yè) scanf(%s,books.pubcom); p
18、rintf(nt出版時(shí)間:); scanf(%s,books.pubtime); printf(nt價(jià)格:); scanf(%f,&books.price); if (fp1=fopen(book.txt,r)!=NULL) do fread(&book_taxisi,sizeof(struct bookinf),1,fp1); i=i+1; while(!feof(fp1); fclose(fp1); for (j=0;jx;j+) if (books.num=book_taxisj.num) printf(nnnt對(duì)不起,這個(gè)編號(hào)已經(jīng)使用過(guò)了n); printf(t按任意鍵返回管理菜單);
19、 printf(0); input=getchar(); book_search(); break; for (j=x+1;ji-2;j+) if (books.num=book_taxisj.num) printf(nnnt對(duì)不起,這個(gè)編號(hào)已經(jīng)使用過(guò)了n); printf(1); printf(t按任意鍵返回管理菜單); input=getchar(); book_search(); break; book_taxisx=books; fp=fopen(book.txt,w); for (j=0;j2) 第 11 頁(yè) fp=fopen(book.txt,w); for (j=0;jy;j+)
20、 fwrite(&book_taxisj,sizeof(struct bookinf),1,fp); fclose(fp); fp=fopen(book.txt,a); for (j=y+1;ji-1;j+) fwrite(&book_taxisj,sizeof(struct bookinf),1,fp); fclose(fp); else remove(book.txt); printf(nnt記錄已刪除!nnt按任意鍵返回nt); input=getchar(); adm_servelist(); (5) 圖書(shū)信息查詢功能模塊void book_search() void adm_serv
21、elist(); void id_search(); void wr_search(); void bn_search(); char input; FILE *fp; int inp; if (fp=fopen(book.txt,r)=NULL) printf(nnnt數(shù)據(jù)尚未初始化nnt請(qǐng)?jiān)诠芾聿藛沃性黾訄D書(shū)信息n); printf(ntnt); input=getchar(); adm_servelist(); else do 第12頁(yè) printf(nnnt1.按圖書(shū)登錄號(hào)查詢n); printf(nt2.按圖書(shū)作者查詢n); printf(nt3.按圖書(shū)名查詢n); printf(nt4.回到主菜單n); printf(nnt請(qǐng)選擇查詢類(lèi)別:); scanf(%d,&inp); if (inp!=1&inp!=2&
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車(chē)抵押合同
- 珠寶店裝修合同管理費(fèi)標(biāo)準(zhǔn)
- 兼職人員用工勞動(dòng)合同協(xié)議書(shū)
- 三維動(dòng)畫(huà)委托制作合同范本
- 民間融資三方協(xié)議書(shū)范本
- 2025年度辦公室租賃及企業(yè)知識(shí)產(chǎn)權(quán)保護(hù)服務(wù)協(xié)議
- 商鋪分租合同
- 項(xiàng)目啟動(dòng)及執(zhí)行策劃方案
- 足球教練聘用合同
- 職工食堂承包合同集合
- 胸外科講課全套
- 醫(yī)療器械GSP相關(guān)
- 2023年海南省公務(wù)員錄用考試《行測(cè)》真題卷及答案解析
- 電力工程施工售后保障方案
- 中國(guó)心力衰竭診斷和治療指南2024解讀(完整版)
- 多源數(shù)據(jù)整合
- 新人教版高中數(shù)學(xué)必修第二冊(cè)第六章平面向量及其應(yīng)用教案 (一)
- 校園招聘活動(dòng)策劃方案(6篇)
- 期末 (試題) -2024-2025學(xué)年教科版(廣州)英語(yǔ)四年級(jí)上冊(cè)
- 解讀國(guó)有企業(yè)管理人員處分條例課件
- 湖南省長(zhǎng)沙市一中2024-2025學(xué)年高一生物上學(xué)期期末考試試題含解析
評(píng)論
0/150
提交評(píng)論