C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)資料_第1頁(yè)
C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)資料_第2頁(yè)
C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)資料_第3頁(yè)
C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)資料_第4頁(yè)
C語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書(shū)信息管理系統(tǒng)資料_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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ì)報(bào)告課程名稱(chēng)C語(yǔ)言課程設(shè)計(jì)課題名稱(chēng)圖書(shū)管理系統(tǒng)專(zhuān)業(yè)電氣工程及其自動(dòng)化班級(jí)學(xué)號(hào)姓名指導(dǎo)教師2016年12月20日湖南工程學(xué)院課程設(shè)計(jì)任務(wù)書(shū)課程名稱(chēng)C語(yǔ)言課程設(shè)計(jì)課題圖書(shū)管理系統(tǒng)專(zhuān)業(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電氣1604你直任務(wù)D600湖南工程學(xué)院計(jì)算機(jī)科學(xué)系2016年12月13日1 題目要求2

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) 圖書(shū)信息瀏覽功能。(4) 圖書(shū)信息查詢(xún)功能。(5) 圖書(shū)信息的刪除和修改。2、分析:

3、根據(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ū)信息錄入,瀏覽,查詢(xún),刪除和修改等功能的操作,所以需要建立相應(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ū)信息查詢(xún)功能。(6) 圖書(shū)信息的刪除和修改。圖書(shū)信息管理系統(tǒng)管理員登錄系統(tǒng)模塊菜單選擇模塊圖書(shū)信息錄入功能模塊圖

4、書(shū)信息瀏覽功能模塊圖書(shū)信息查詢(xún)功能模塊圖書(shū)信息的刪除和修改4、詳細(xì)設(shè)計(jì):頭函數(shù)名:#include<stdio.h>#include<stdlib.h>#include<string.h>/*圖書(shū)信息結(jié)構(gòu)體 */*包括登錄號(hào),書(shū)名,作者名,分類(lèi)號(hào),出版單位,出版時(shí)間,價(jià)格等*/structbookinf int num;*char bname20;*char wname10;*char clanum14;*char pubcom10;*char pubtime10;*float price;*登錄號(hào) 書(shū)名 作者名 分類(lèi)號(hào) 出版單位 出版時(shí)間 價(jià)格;一 管理員

5、登錄系統(tǒng)模塊:( 1) 來(lái)到圖書(shū)信息管理系統(tǒng)頁(yè)面void index()char input;printf("nnttt*n");printf("ttt 圖書(shū)信息管理系統(tǒng)n");注釋?zhuān)?運(yùn)行時(shí)直接進(jìn)入這個(gè)頁(yè)面printf("ttt*nnn");printf("n");printf("t<按任意鍵進(jìn)入>nt");input=getchar();(2)管理員登陸進(jìn)入功能菜單頁(yè)面FILE*fp;structmanagepswd;if(fp=fopen("password.txt&

6、quot;,"r")=NULL)printf("nnntCannotopenfile!nt");elsedoprintf("nnt請(qǐng)輸入管理員帳號(hào):");scanf("%s",name);printf("nnt請(qǐng)輸入管理員密碼:");scanf("%s",password);fp=fopen("password.txt","r");fread(&pswd,sizeof(structmanage),1,fp);fclose(fp)

7、;w=strcmp(pswd.manage_name,name);k=strcmp(pswd.password,password);adm_servelist();while(w!=0|k!=0);adm_servelist();(3) 來(lái)到功能菜單頁(yè)面voidadm_servelist()voidbook_add();voidbook_view();voidchange();voiddel();voidbook_search();voidlogin();voidpwchange();intin;charinput;doprintf("nnnt-歡迎使用信息管理系統(tǒng)-");

8、printf("nnt1.圖書(shū)信息錄入n");printf("t2.圖書(shū)信息瀏覽n");printf("t3.圖書(shū)信息查詢(xún)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!

9、=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)case 1: book_add();break;case 2: book_view();break;case 3: book_search();break;case 4: del();

10、break;case 5: change();break;case 6: login();break;注釋 : 菜單列出的服務(wù)種類(lèi)從 1 , 2, 3, 4, 5 , 6所對(duì)應(yīng)的功能進(jìn)行選擇注釋 :選擇自己所需要后摁下數(shù)字鍵則 則進(jìn)入此功能頁(yè)面(4) 圖書(shū)信息錄入功能模塊voidbook_add()voidadm_servelist();voidbook_add();inti=0,j;FILE*fp;注釋?zhuān)狠斎氲膱D書(shū)信息是通過(guò)文件進(jìn)行保存的charinput;structbookinfbooks;structbookinfbook_taxis30;printf("nnnt-請(qǐng)輸入圖書(shū)

11、信息-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("%

12、s",books.pubcom);printf("nt出版時(shí)間:");scanf("%s",books.pubtime);printf("nt價(jià)格:");scanf("%f",&books.price);if(fp=fopen("book.txt","r")!=NULL)dofread(&book_taxisi,sizeof(structbookinf),1,fp);i=i+1;while(!feof(fp);fclose(fp);for(j=0;j

13、<=i;j+)if(books.num=book_taxisj.num)printf("nnnt對(duì)不起,這個(gè)編號(hào)已經(jīng)使用過(guò)了n");printf("t按任意鍵返回管理菜單");input=getchar();adm_servelist();break;if(fp=fopen("book.txt","r")=NULL)fp=fopen("book.txt","w");elsefclose(fp);fp=fopen("book.txt","a&

14、quot;);fwrite(&books,sizeof(structbookinf),1,fp);fclose(fp);printf("nnnt信息輸入完畢按任意鍵繼續(xù)n");input=getchar();adm_servelist();( 3) 圖書(shū)信息瀏覽功能模塊voidbook_view()voidadm_servelist();voidbook_view();intinp,i=0,n=0;FILE*fp;charinput;structbookinfbookview20;if(fp=fopen("book.txt","r&qu

15、ot;)=NULL)printf("nnnt數(shù)據(jù)尚未初始化nnt請(qǐng)?jiān)诠芾聿藛沃性黾訄D書(shū)信息n");printf("nt<按任意鍵返回管理菜單>nt");input=getchar();adm_servelist();elsedofread(&bookviewi,sizeof(structbookinf),1,fp);i=i+1;while(!feof(fp);fclose(fp);doprintf("nt共有%d條記錄",i-1);printf("nnt登錄號(hào):%dn",bookviewn.nu

16、m);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

17、.上一頁(yè)t2.下一頁(yè)t3.回目錄n");printf("nt請(qǐng)選擇:");scanf("%d",&inp);switch(inp)case 1:if(n=0)printf("nt已到達(dá)首頁(yè)nt按任意鍵重新選擇");input=getchar();elsen=n-1;break;case 2:if(n=i-2)printf("nt已到達(dá)最末頁(yè)nt按任意鍵重新選擇");input=getchar();elsen=n+1;break;case 3:adm_servelist();break;defaul

18、t:printf("nt沒(méi)有這項(xiàng)服務(wù)nt按任意鍵重新選擇");input=getchar();while(inp!=3);( 4) 圖書(shū)信息修改與刪除功能模塊修改:voidchange(intx)intinp,i=0,j;voidbook_search();FILE*fp,*fp1;charinput;structbookinfbooks,book_taxis20;doprintf("nnnt注意:您確定要修改該記錄嗎?n");printf("nt1.是t2.否n");printf("nt請(qǐng)輸入:");scanf(

19、"%d",&inp);if(inp!=1&&inp!=2)printf("nt對(duì)不起沒(méi)有這項(xiàng)服務(wù)n");printf("t按任意鍵重新選擇nt");input=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(

20、"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í)間:");scanf("%s",books.pubtim

21、e);printf("nt價(jià)格:");scanf("%f",&books.price);if(fp1=fopen("book.txt","r")!=NULL)dofread(&book_taxisi,sizeof(structbookinf),1,fp1);i=i+1;while(!feof(fp1);fclose(fp1);for(j=0;j<x;j+)if(books.num=book_taxisj.num)printf("nnnt對(duì)不起,這個(gè)編號(hào)已經(jīng)使用過(guò)了n");p

22、rintf("t按任意鍵返回管理菜單");printf("0");input=getchar();book_search();break;for(j=x+1;j<i-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(&qu

23、ot;book.txt","w");for(j=0;j<i-1;j+)fwrite(&book_taxisj,sizeof(structbookinf),1,fp);fclose(fp);printf("nnt信息修改完成!按任意鍵返回");input=getchar();book_search();S刪除:voiddel(inty)charinput;FILE*fp;intinp,i=0,j;structbookinfbook_taxis20;voidbook_search();voidadm_servelist();dopri

24、ntf("nnnt注意:您確定要?jiǎng)h除該記錄嗎?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");input=getchar();while(inp!=1&&inp!=2);if(inp=2)book_search();if(inp=1)if(fp

25、=fopen("book.txt","r")!=NULL)dofread(&book_taxisi,sizeof(structbookinf),1,fp);i=i+1;while(!feof(fp);fclose(fp);fp=fopen("book.txt","w");for(j=0;j<y;j+)fwrite(&book_taxisj,sizeof(structbookinf),1,fp);fclose(fp);fp=fopen("book.txt","a&q

26、uot;);for(j=y+1;j<i-1;j+)fwrite(&book_taxisj,sizeof(structbookinf),1,fp);fclose(fp);elseremove("book.txt");printf("nnt記錄已刪除!nnt按任意鍵返回nt");input=getchar();adm_servelist();( 5) 圖書(shū)信息查詢(xún)功能模塊voidbook_search()voidadm_servelist();voidid_search();voidwr_search();voidbn_search();cha

27、rinput;FILE*fp;intinp;if(fp=fopen("book.txt","r")=NULL)printf("nnnt數(shù)據(jù)尚未初始化nnt請(qǐng)?jiān)诠芾聿藛沃性黾訄D書(shū)信息n");printf("nt<按任意鍵返回管理菜單>nt");input=getchar();adm_servelist();elsedoprintf("nnnt1.按圖書(shū)登錄號(hào)查詢(xún)n");printf("nt2.按圖書(shū)作者查詢(xún)n");printf("nt3.按圖書(shū)名查詢(xún)n");printf("nt4.回到主菜單n");printf("nnt請(qǐng)選擇查詢(xú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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論