




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告圖書(shū)管理系統(tǒng)專(zhuān)業(yè)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)生姓名于露班級(jí)b計(jì)123學(xué)號(hào)1210704324指導(dǎo)教師張靜林完成日期2013年6月1 課程設(shè)計(jì)的目的1. 加強(qiáng)對(duì)c語(yǔ)言程序設(shè)計(jì)課程知識(shí)的理解,掌握c語(yǔ)言應(yīng)用程序的開(kāi)發(fā)方法和步驟2. 進(jìn)一步掌握和利用c語(yǔ)言進(jìn)行程序設(shè)計(jì)的能力3. 進(jìn)一步理解和運(yùn)用結(jié)構(gòu)化程序設(shè)計(jì)的思想和方法4. 初步掌握開(kāi)發(fā)一個(gè)小型實(shí)用系統(tǒng)的基本方法5. 學(xué)會(huì)調(diào)試一個(gè)較長(zhǎng)程序的基本方法6. 學(xué)會(huì)利用流程圖或n-s圖表示算法7. 掌握書(shū)寫(xiě)程序設(shè)計(jì)開(kāi)發(fā)文檔的能力(書(shū)寫(xiě)課程設(shè)計(jì)報(bào)告)2 課程設(shè)計(jì)任務(wù)3 課程設(shè)計(jì)課題課題1:圖書(shū)管理系統(tǒng)總體程序框圖系統(tǒng)的總體流程圖開(kāi)始編譯運(yùn)行main
2、 打開(kāi)文件數(shù)據(jù)讀入結(jié)構(gòu)體中執(zhí)行選擇 調(diào)用不同函數(shù)程序# include <stdio.h># include <string.h># include <stdlib.h>struct list char num20 ; /*圖書(shū)編號(hào)*/ char name40 ; /*書(shū)名*/ char author40 ; /*作者*/ char publish 40; /*出版社*/ double price ; /*價(jià)格*/;struct list b40 ;int w=0; /*定義一個(gè)全局變量,用來(lái)記錄bookinfo.txt文件中的數(shù)據(jù)個(gè)數(shù)*/void sear
3、ch_allinformation(struct list b) ; /*查看全部圖書(shū)信息*/void check_bookinformation (struct list b ); /*查找圖書(shū)信息*/void add_bookinformation (struct list b ); /*添加圖書(shū)信息*/void delete_bookinformation (struct list b ); /*刪除圖書(shū)信息*/void borrow_book (struct list b ) ; /*借閱圖書(shū)*/int main () int i = 0 ; int choice1; file *fp
4、 ; printf(" * * *n"); printf(" * 歡迎進(jìn)入圖書(shū)館信息管理系統(tǒng) *n"); printf(" * * *n"); fp = fopen ("e:bookinfo.txt" , "r") ; if(fp = null) printf("can not open the file !n") ; exit (0) ; while (! feof(fp) fscanf(fp,"%s%s%s%s%lf" , /*調(diào)用函數(shù)將文件中的數(shù)據(jù)讀
5、入結(jié)構(gòu)變量中*/ bi.num,,bi.author,bi.publish,&bi.price) ; i+ ; w=i-1; fclose (fp) ; do printf("#");printf(" 功能選項(xiàng): n");printf(" 1:查看全部圖書(shū)信息 n") ;printf(" 2:查找圖書(shū)信息 n") ;printf(" 3:添加圖書(shū)信息 n") ;printf(" 4:刪除圖書(shū)信息 n") ;printf(" 5:借閱圖書(shū) n&q
6、uot;) ;printf(" 0:退出系統(tǒng) n") ;printf("#");printf("請(qǐng)選擇操作:"); scanf("%d" , &choice1); switch (choice1) case 1 : search_allinformation (b); break ; case 2 : check_bookinformation( b ); break ; case 3 : add_bookinformation (b ); break ; case 4 : delete_bookinfor
7、mation( b); break ; case 5 : borrow_book( b); break ; case 0 : break ;while (choice1 != 0); printf("謝謝使用!n"); return 0; /*查看全部圖書(shū)信息*/void search_allinformation (struct list b)int i; printf(" #n"); printf(" # 查看全部圖書(shū)信息! #n"); printf(" #n"); printf("圖書(shū)的相關(guān)信息:
8、編號(hào) 書(shū)名 作者 出版社 價(jià)格n"); for(i=0;i<w;i+) printf(" %s %s %s %s %.2fn", /*將數(shù)據(jù)輸出到屏幕中*/ bi.num, , bi.author, bi.publish, bi.price); printf("%d " , w); printf("#n"); /*查找圖書(shū)信息*/void check_bookinformation(struct list b )int i, flag=0;char s20; printf("輸入編號(hào):n&quo
9、t;) ; /*提示輸入圖書(shū)編號(hào)*/ scanf("%s" , s); printf(" #n"); printf(" # 查找圖書(shū)信息! #n"); printf(" #n"); for(i=0;i<w;i+) if (strcmp(s, bi.num)=0) printf("該圖書(shū)的相關(guān)信息: 編號(hào) 書(shū)名 作者 出版社 價(jià)格n"); printf(" %s %s %s %s %.2fn", bi.num, , bi.author, bi.publish
10、, bi.price); flag = 1; break; if (flag = 0) printf("該圖書(shū)編號(hào)不存在!n"); printf("是否要繼續(xù)查找? y:是 ; n:否n") ; getchar(); switch(getchar()case 'y': check_bookinformation( b ) ; /*調(diào)用函數(shù)本身繼續(xù)查找*/case 'n' : break ; printf("#n");/*添加圖書(shū)信息*/void add_bookinformation(struct li
11、st b ) int i, count=0, choice3; struct list p ;file *fp2 ; printf(" #n"); printf(" # 添加圖書(shū)信息! #n"); printf(" #n"); printf("請(qǐng)輸入該圖書(shū)的相關(guān)信息:n") ; printf("編號(hào) 書(shū)名 作者 出版社 價(jià)格n"); scanf(" %s %s %s %s %lf", p.num , ,p.author,p.publish,&p.price
12、); printf(" 添加成功 !n"); printf(" 是否顯示添加后的信息? 1:是 ; 2:否 n"); printf(" 請(qǐng)選擇:"); scanf("%d" , &choice3); switch (choice3) case 1 : for(i=0;i<w;i+) if(strcmp(p.num,bi.num)>0) count + ; for(i=w;i>count;i-) bi = bi-1 ; bi = p ; w+; /*每添加一本圖書(shū),圖書(shū)數(shù)目都會(huì)增加一個(gè)*/
13、fp2 = fopen ("e:bookinfo.txt" , "w") ; if(fp2 = null) printf("can not open the file !n"); exit (0) ; for(i=0;i<w;i+) fprintf(fp2," %s %s %s %s %.2fn" , bi.num,,bi.author,bi.publish,bi.price); fclose (fp2) ; for(i=0;i<w;i+) printf(" %s %s %s %
14、s %.2fn" , bi.num,,bi.author,bi.publish,bi.price); case 2 : break ; printf("#n"); /*刪除圖書(shū)信息*/void delete_bookinformation (struct list b ) int i, flag= 0,choice4; char s20 ; printf(" #n"); printf(" # 刪除圖書(shū)信息 #n"); printf(" #n"); printf("請(qǐng)輸入圖書(shū)編號(hào):&
15、quot;);scanf("%s", s); for(i=0;i<w;i+) if(strcmp(s,bi.num)=0) printf(" 刪除成功 !n"); printf(" 是否顯示刪除后的信息? 1:是 ; 2:否 n"); printf(" 請(qǐng)選擇:"); scanf("%d" , &choice4); switch (choice4) case 1 : printf("刪除后的圖書(shū)信息: 編號(hào) 書(shū)名 作者 出版社 價(jià)格n"); for(i=0;i&
16、lt;w;i+) if(strcmp(s,bi.num)!=0) printf(" %s %s %s %s %.2fn", bi.num, , bi.author, bi.publish, bi.price); case 2 : break ; flag = 1 ; break ; if(flag = 0)printf("該圖書(shū)編號(hào)不存在!n"); printf("#n"); /*借閱圖書(shū)*/void borrow_book(struct list b ) int i=0, n=0,flag=0, x=0;int m;
17、/*定義一個(gè)變量用來(lái)記錄sendinfo.txt文件中的數(shù)據(jù)個(gè)數(shù)*/struct list q;struct student char name20 ; char number40 ;struct student stu50 ; file *fp ; file *fp4 ; printf(" #n"); printf(" # 借閱圖書(shū) #n"); printf(" #n"); a: printf("輸入圖書(shū)編號(hào):"); scanf("%s" , q.num ); fp = fopen (&quo
18、t;e:bookinfo.txt" , "a") ; if(fp = null) printf("can not open the file !n"); exit (0) ; for(i=0;i<w;i+) if(strcmp(q.num , bi.num) =0) flag=1; if(flag=0) printf("該圖書(shū)編號(hào)不存在, 請(qǐng)重新輸入!n"); borrow_book( b ) ; fclose(fp) ; if(flag=1) fp4 = fopen ("e:sentinfo.txt&quo
19、t; , "r") ; if(fp4 = null) printf("can not open the file !n") ; exit (0) ; while (! feof(fp4) fscanf(fp4,"%s%s" , /*調(diào)用函數(shù)將文件中的數(shù)據(jù)讀入結(jié)構(gòu)變量中*/ stui.number,) ; i+ ; n=i-1; fclose (fp4) ; fp = fopen ("e:sentinfo.txt" , "a") ; if(fp = null) printf(&q
20、uot;can not open the file !n"); exit (0) ; for(i=0;i<n;i+) if(strcmp(q.num, stui.number) =0) printf("該圖書(shū)已借出!"); printf("是否繼續(xù)續(xù)借? y or nn"); getchar(); if(getchar()='y') goto a;else x = 1; if(x = 0) /*若該圖書(shū)未借出,則執(zhí)行以下操作*/ printf("請(qǐng)輸入學(xué)號(hào): "); scanf("%d", &m); if(fp=fopen("e:sendinfo.txt","a") = null) printf("file open error!n"); exit(0); fprintf(fp," %s %d",q.num , m ); fclose(fp); printf(" 借閱成功!n
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 付國(guó)外傭金合同范本
- 化妝品廣告合同范本
- 豐田汽車(chē)合同范本
- 光伏運(yùn)營(yíng)合作合同范本
- 農(nóng)戶(hù)辣椒種植合同范本
- 優(yōu)惠倉(cāng)庫(kù)租賃服務(wù)合同范本
- 冷凍海鮮銷(xiāo)售合同范本
- 農(nóng)村購(gòu)買(mǎi)墳地合同范本
- 中石油員工業(yè)績(jī)合同范本
- 會(huì)務(wù)定金合同范本
- 人教版高一下英語(yǔ)單詞表
- 2025年中國(guó)遠(yuǎn)洋海運(yùn)集團(tuán)限公司中石化中海船舶燃料供應(yīng)限公司招聘26人高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- 2025年春季學(xué)期各周?chē)?guó)旗下講話(huà)安排表+2024-2025學(xué)年度第二學(xué)期主題班會(huì)安排表
- 汽車(chē)電腦故障解碼器項(xiàng)目可行性研究報(bào)告評(píng)審方案設(shè)計(jì)2025年發(fā)改委標(biāo)準(zhǔn)
- 實(shí)驗(yàn)室生物安全培訓(xùn)
- 藥品專(zhuān)業(yè)知識(shí)培訓(xùn)考試試題5
- 五年級(jí)下冊(cè)勞動(dòng)《日常收納》課件
- 騰訊風(fēng)控師(初級(jí))認(rèn)證考試題庫(kù)(附答案)
- 第28課改革開(kāi)放和社會(huì)主義現(xiàn)代化建設(shè)的巨大成就 課件-高一統(tǒng)編版(2019)必修中外歷史綱要上冊(cè)
- 豬場(chǎng)消防安全培訓(xùn)
- 2024年中國(guó)游戲產(chǎn)業(yè)報(bào)告
評(píng)論
0/150
提交評(píng)論