版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課程設(shè)計(jì)論文一、論文題目: “程序設(shè)計(jì)方法課程設(shè)計(jì)”論文二、引言C語(yǔ)言作為面向結(jié)構(gòu)的高級(jí)程序設(shè)計(jì)語(yǔ)言,有著強(qiáng)大的編程功能。它具有語(yǔ)言簡(jiǎn)潔、緊湊、方便、靈活等特點(diǎn)。而且,C語(yǔ)言運(yùn)算符和數(shù)據(jù)結(jié)構(gòu)豐富語(yǔ)法自由度大,是一種強(qiáng)大的程序編輯工具,適用范圍很大。圖書館管理系統(tǒng)與學(xué)生的日常學(xué)習(xí)和生活有著密切的關(guān)系。本次試驗(yàn)課題“設(shè)計(jì)圖書館管理系統(tǒng)”充分的發(fā)揮了C語(yǔ)言的功能特點(diǎn),很好的鍛煉了學(xué)生學(xué)習(xí)應(yīng)用C語(yǔ)言的能力,這對(duì)今后從事軟件開發(fā)、研究和應(yīng)用都有很大的幫助。三、論文內(nèi)容:設(shè)計(jì)一個(gè)圖書館的圖書管理,具體要求如下:1錄入新采購(gòu)的圖書信息,做成文件book.in,要求有良好的輸入界面;2查詢各種圖書的基本信息,
2、設(shè)計(jì)出良好的查詢界面;3按圖書編號(hào)進(jìn)行排序,將排好序的圖書信息輸出到文件 book.out中。4統(tǒng)計(jì)各類圖書冊(cè)數(shù)、圖書館的圖書總冊(cè)數(shù)。5統(tǒng)計(jì)圖書的借閱情況。四、正文1、需求分析 (1)能進(jìn)行簡(jiǎn)單的圖書館管理功能操作。(2)通過圖書館信息界面進(jìn)入管理系統(tǒng)。(3)在管理系統(tǒng)中完成圖書的錄入、查找、借閱、統(tǒng)計(jì)等功能。(4)得到及時(shí)的信息引導(dǎo)和錯(cuò)誤提示。退出系統(tǒng)借閱是否借閱這本書?2、需求框圖繼續(xù)退出系統(tǒng)是否繼續(xù)錄入?查詢結(jié)果圖書館管理系統(tǒng)統(tǒng)計(jì)每種書的個(gè)數(shù)返回圖書館信息系統(tǒng)按作者查詢按書名查詢按書號(hào)查詢錄入作者錄入數(shù)量錄入書名圖書統(tǒng)計(jì)圖書查詢系統(tǒng)圖書錄入系統(tǒng)返回信息系統(tǒng)主菜單退出圖書館管理系統(tǒng)進(jìn)入圖書
3、館信息系統(tǒng)錄入書號(hào)3、設(shè)計(jì)分析 (1)定義book結(jié)構(gòu)體,用來(lái)儲(chǔ)存圖書的信息(包括書號(hào)、書名、作者、數(shù)量)。(2)設(shè)計(jì)圖書館信息界面和圖書查詢界面,定義兩個(gè)對(duì)應(yīng)的函數(shù)用來(lái)調(diào)用這兩個(gè)界面。(3)將錄入的新書的內(nèi)容寫進(jìn)文件bookin中。(4)從文件bookin中讀出圖書的信息(讀到tnum、tname、tauther、tamount中),并與查詢時(shí)輸入的數(shù)據(jù)信息(ttnum、ttname、ttauther)進(jìn)行比較,當(dāng)有一項(xiàng)相同時(shí)打印處該圖書信息(tnum、tname、tauther、tamount)。(5)當(dāng)選擇借閱當(dāng)前圖書時(shí)(選Y)時(shí),tamount減一。4、設(shè)計(jì)框圖Welcome to l
4、ibruary systerm tsgxx()system(cls)informationmenu()Informationtable exitbookin() choose 2checktablePlease add a book check()Add the books num name auther amountCheck by num or name or auther Ywill you borrow it?exitcountinue Yborrowedexit5、系統(tǒng)設(shè)計(jì)第二層分系統(tǒng)3:統(tǒng)計(jì)系統(tǒng)第二層分系統(tǒng)2:圖書查詢系統(tǒng)第二層分系統(tǒng)1:圖書錄入系統(tǒng)第一分層系統(tǒng):圖書館信息系統(tǒng)退出
5、主系統(tǒng):圖書館管理系統(tǒng)第三層分系統(tǒng):圖書借閱系統(tǒng)6、主要數(shù)據(jù)結(jié)構(gòu)(1)結(jié)構(gòu)體:用來(lái)儲(chǔ)存圖書信息。(2)文件:用來(lái)存儲(chǔ)錄入圖書的信息。(3)數(shù)組:用來(lái)存儲(chǔ)字符串。(4)函數(shù):通過調(diào)用實(shí)現(xiàn)要求的特定功能。7、程序代碼(主要程序段)#include "stdio.h"#include "stdlib.h"#include "conio.h"#include "string.h"#include "math.h"struct book int num10; char name10; char autho
6、r10; int amount4; ;*定義圖書的結(jié)構(gòu)體*void tsgxx();void jieshuxt();void informationmenu();void checkmenu();void mainmenu()*聲明用到的一些函數(shù)* system("cls");printf("*n"); printf("Welcome to the libeary systerm!nn"); printf("tt 1.Informatin system of the librarynn"); printf(&quo
7、t;tt 2.Exit of the library systemnn");printf("*n");printf("Choose the key:");return; *打印圖書館管理系統(tǒng)界面*void informationtable() system("cls"); printf("Welcone to informatin system n"); printf("-n"); printf("tt1.Bookinn"); printf("tt2.ch
8、eckn"); printf("tt3.Recordn"); printf("tt4.Retern to the mainmenun"); printf("-n"); *圖書信息系統(tǒng)界面* void checktable()system("cls"); printf("welcome to borrow systemn"); printf("-n"); printf("tt1.booknumn"); printf("tt2.bookna
9、men"); printf("tt3.bookauthern"); printf("tt4.Retern to the informationmenun"); printf("-n"); *圖書查詢系統(tǒng)界面*void main1() char choose; mainmenu(); scanf("%c",&choose); switch(choose) case '1':tsgxx();break;case '2':system ("cls");
10、printf("nnnnnnnnnttt Byebye."); getch(); exit(0);*定義mian1函數(shù)*void tsgxx() char choose; informationmenu();*定義tsgxx函數(shù)*void bookin();void checkbook();void check();void tj();main()main1();getch();*主函數(shù)*void informationmenu() char choose; informationtable(); printf("Please enter a choice! :&
11、quot;); scanf("%c",&choose); switch(choose) case '1':bookin();break; case '2':checkbook();break; case '3':tj();break; case '4':mainmenu(); *定義informationmenu函數(shù)*void checkbook()char choose; checkmenu();*定義checkbook函數(shù)*void checkmenu()char choose; checktabl
12、e(); check();*定義checkmenu函數(shù)*void bookin()char num110; char name120; char author110; char ch; int amount14; struct book temp; FILE *fp; printf("nnWelcome to add a book!"); /*if(fp)=NULL) printf("THE FILE DOSEN'T EXIST!"); fp=fopen("C:bookin.txt","w"); fclos
13、e(fp);*/ fp=fopen("C:bookin","w+"); ch='y' do printf("nnInput the new book:include( number; bookname; author; amount; )nn"); scanf("%s%s%s%s",num1,name1,author1,amount1);fprintf(fp,"%s %s %s %s",temp.num,,temp.author,temp.amount); pr
14、intf("Enter 'y' key to continue to add"); ch=getch(); while(ch='y'); fclose(fp); printf("nSave successfully!n");printf("");*定義bookin函數(shù)*int tjzs() FILE *fp; int tnum=0,tamount=0,n; char tname20='0',tauthor20='0' fp=fopen("C:bookin&quo
15、t;,"rb"); for (n=0;!feof(fp);n+) fscanf(fp,"%s %s %s %s",&tnum,tname,tauthor,&tamount); n-; fclose(fp); return (n);*定義tjzs函數(shù)*void check()FILE *fp; char choose; int tnum=0,ttnum=0,tamount=0,k,i,l,c; char tname20='0', ttname20='0',tauthor20='0',ttaut
16、hor20='0' if (fp=fopen("C:bookin","rb")=NULL) printf("nnnnnnnnntttfile not found!.any key to return."); getch(); informationtable(); l=tjzs(); checktable(); scanf("%c",&choose); if (choose='4') informationtable(); else if (choose='1'
17、;) system ("cls"); printf("enter the book number:"); scanf("%s",ttnum); elseif (choose='2') system ("cls"); printf("enter the book name:"); scanf("%s",ttname); else if (choose='3') system ("cls"); printf("ente
18、r the book auther:"); scanf("%s",ttauthor); system ("cls"); for (i=0;i<l;i+) fscanf(fp,"%s%s%s%s",tnum,tname,tauthor,tamount);k=(!strcmp(ttnum,tnum)|!strcmp(ttname,tname)|!strcmp(ttauthor,tauthor);if(k!=0) printf("ttttsearch result:nn"); printf("t
19、booknumttbooknametbookauthertbookamount n"); printf("t%stt%stt%stt%sn",tnum,tname,tauthor,tamount);printf("nttWill you borrow this book?(YorN)nn");scanf("%c",c);if (c='Y')tamount-;printf("ttThe amount now ist%s",tamount); if (k=0) system ("cl
20、s"); printf("nnnnnnntttt no one match !n"); getch(); tsgxx(); fclose(fp);getch(); tsgxx();*定義check函數(shù)*void tj()char tname20='0', ttname20='0'FILE *fp;if (fp=fopen("C:bookin","rb")=NULL) printf("nnnnnnnnntttfile not found!.any key to return."
21、;); getch(); informationtable();system ("cls"); printf("enter the book name:"); scanf("%s",ttname)l=tjzs();for (i=0;i<l;i+) fscanf(fp,"%s%s%s%s",tnum,tname,tauthor,tamount);k=(!strcmp(ttname,tname);if(k!=0)printf("ttttsearch result:nn"); printf("ttbooknamettamount);printf
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年房產(chǎn)抵押借款標(biāo)準(zhǔn)化協(xié)議樣本
- 2024年土地流轉(zhuǎn)合同書-土地流轉(zhuǎn)項(xiàng)目法律風(fēng)險(xiǎn)防范補(bǔ)充協(xié)議3篇
- 2024上海消防設(shè)施維護(hù)保養(yǎng)與應(yīng)急預(yù)案編制合同3篇
- 2024年度股權(quán)激勵(lì)計(jì)劃合同標(biāo)的及其激勵(lì)條件
- 2024年度食品加工廠建設(shè)施工合同4篇
- 2024年度商貿(mào)城店面租賃及品牌形象展示合同2篇
- 2024年度宅基地及附屬設(shè)施遺贈(zèng)合同3篇
- 2024年度勞動(dòng)合同解除及經(jīng)濟(jì)補(bǔ)償計(jì)算3篇
- 2024年酒店會(huì)員積分兌換合作協(xié)議2篇
- 2024年度租賃房屋安全風(fēng)險(xiǎn)評(píng)估及管理協(xié)議3篇
- 浙江標(biāo)準(zhǔn)農(nóng)貿(mào)市場(chǎng)建設(shè)與管理規(guī)范
- 護(hù)理質(zhì)控分析整改措施(共5篇)
- 金屬礦山安全教育課件
- 托盤演示教學(xué)課件
- 中華農(nóng)耕文化及現(xiàn)實(shí)意義
- DB32T 4353-2022 房屋建筑和市政基礎(chǔ)設(shè)施工程檔案資料管理規(guī)程
- DBJ61-T 112-2021 高延性混凝土應(yīng)用技術(shù)規(guī)程-(高清版)
- 2023年高考數(shù)學(xué)求定義域?qū)n}練習(xí)(附答案)
- 農(nóng)產(chǎn)品品牌與營(yíng)銷課件
- 蘇科版一年級(jí)心理健康教育第17節(jié)《生命更美好》教案(定稿)
- 車輛二級(jí)維護(hù)檢測(cè)單參考模板范本
評(píng)論
0/150
提交評(píng)論