c語(yǔ)言程序課程設(shè)計(jì)報(bào)告-學(xué)生籍貫信息記錄簿設(shè)計(jì)_第1頁(yè)
c語(yǔ)言程序課程設(shè)計(jì)報(bào)告-學(xué)生籍貫信息記錄簿設(shè)計(jì)_第2頁(yè)
c語(yǔ)言程序課程設(shè)計(jì)報(bào)告-學(xué)生籍貫信息記錄簿設(shè)計(jì)_第3頁(yè)
c語(yǔ)言程序課程設(shè)計(jì)報(bào)告-學(xué)生籍貫信息記錄簿設(shè)計(jì)_第4頁(yè)
c語(yǔ)言程序課程設(shè)計(jì)報(bào)告-學(xué)生籍貫信息記錄簿設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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)告書(shū)學(xué)生籍貫信息記錄簿設(shè)計(jì) 班 級(jí): 學(xué) 號(hào): 姓 名: 指導(dǎo)教師: 2010年07月14日課程設(shè)計(jì)報(bào)告內(nèi)容1. 選擇題目 題目:學(xué)生籍貫信息記錄簿設(shè)計(jì)2. 內(nèi)容摘要摘要:學(xué)生籍貫信息管理系統(tǒng)是典型的信息管理系統(tǒng),根據(jù)開(kāi)發(fā)要求,主要完成對(duì)學(xué)生姓名、學(xué)號(hào)、籍貫等管理。隨著學(xué)校辦學(xué)規(guī)模的不斷擴(kuò)大、辦學(xué)層次的多樣化、在校生的不斷增多。開(kāi)發(fā)這系統(tǒng)可以是教務(wù)處老師減輕工作壓力,比較系統(tǒng)的對(duì)學(xué)生進(jìn)行管理,加快速度、加強(qiáng)管理,使各項(xiàng)管理更加規(guī)范化 。本系統(tǒng)管理內(nèi)容廣泛,全面涉及管理學(xué)生資料信息的管理。3. 索引關(guān)鍵詞關(guān)鍵詞:學(xué)生籍貫管理,結(jié)構(gòu)體,循環(huán),函數(shù)4. 目錄目錄1題目要求42設(shè)計(jì)思想43系

2、統(tǒng)完成及功能44界面設(shè)計(jì)55正文56結(jié)論147參考資料148后記159附錄155.正文1.1課程設(shè)計(jì)題目要求1. 要求利用C語(yǔ)言面向過(guò)程的編程思想來(lái)完成系統(tǒng)的設(shè)計(jì); 2. 突出C語(yǔ)言的函數(shù)特征,以多個(gè)函數(shù)實(shí)現(xiàn)每一個(gè)子功能; 3. 畫(huà)出功能模塊圖; 4. 進(jìn)行簡(jiǎn)單界面設(shè)計(jì),能夠?qū)崿F(xiàn)友好的交互; 5. 具有清晰的程序流程圖和數(shù)據(jù)結(jié)構(gòu)的詳細(xì)定義; 6. 熟練掌握C語(yǔ)言對(duì)文件的各種操作。2.1設(shè)計(jì)思想程序運(yùn)用結(jié)構(gòu)體數(shù)組和循環(huán)進(jìn)行程序的編寫(xiě).3.1系統(tǒng)完成功能及功能框圖1每條記錄包括一個(gè)學(xué)生學(xué)號(hào)、姓名、籍貫。2輸入功能:可以一次完成無(wú)數(shù)條記錄的輸入。3顯示功能:完成全部學(xué)生記錄的顯示。4查找功能:完成按

3、姓名、學(xué)號(hào)查找學(xué)生記錄,并顯示。5修改功能:通過(guò)查找學(xué)生姓名、學(xué)號(hào),修改學(xué)生記錄。6保存功能:將學(xué)生記錄保存到任何自定義的文件中。7讀取功能:將保存到文件中的學(xué)生記錄讀取出來(lái)。8應(yīng)提供一個(gè)界面來(lái)調(diào)用各個(gè)功能,調(diào)用界面和功能的操作界面應(yīng)盡可能清晰美觀。主要功能 輸出編輯刪除查詢錄入4.1界面設(shè)計(jì) 5.1核心算法及說(shuō)明 #include #include #include #include #define MAX 300struct student char name10; / 姓名 char no50; / 學(xué)號(hào) char ad20; /籍貫;struct data int count; / 當(dāng)

4、前學(xué)生數(shù)組中學(xué)生的個(gè)數(shù) struct student stuMAX; / 學(xué)生數(shù)組 dd; / 顯示主菜單void menu() system(cls); printf(n); printf(ttt*n); printf(ttt* *n); printf(ttt* 學(xué)生籍貫信息記錄簿 *n); printf(ttt* *n); printf(ttt* 0 退出 *n); printf(ttt* 1 查看所有學(xué)生信息 *n); printf(ttt* 2 輸入學(xué)生記錄 *n); printf(ttt* 3 刪除學(xué)生記錄 *n); printf(ttt* 4 編輯學(xué)生記錄 *n); printf(

5、ttt* 5 查詢(學(xué)號(hào)) *n); printf(ttt* 6 查詢(姓名) *n); printf(ttt* 7 查詢(籍貫) *n); printf(ttt* *n); printf(ttt*n); printf(ttt* 制作人:苑小葉 崔京 *n); / 等待用戶按回車后回到主菜單void to_menu() char c1,c2; printf(nnn按回車鍵返回主菜單.); scanf(%c%c,&c1,&c2); menu(); / 查看所有學(xué)生信息void view_data() int i; printf(姓名t學(xué)號(hào)t籍貫); printf(n-n); for(i=0;id

6、d.count;i+) printf(%st%st%sn,,dd.stui.no,dd.stui.ad); / 將數(shù)據(jù)從結(jié)構(gòu)體數(shù)組保存到文件中void save_data() FILE *fp; int i,k; k=dd.count; fp=fopen(c:/dada.txt,w); fwrite(&k,sizeof(int),1,fp); for(i=0;ik;i+) fwrite(&dd.stui,sizeof(struct student),1,fp); fclose(fp); / 輸入學(xué)生記錄void add_data() struct student st;

7、 int b; int k; int i,j; while(1) j=0; printf(n請(qǐng)輸入學(xué)生信息:); printf(n姓名t學(xué)號(hào)t籍貫); printf(n-n); scanf(%s%s%s,,st.no,st.ad); for(i=0;idd.count;i+) if(strcmp(dd.stui.no,st.no)=0) j=1; printf(學(xué)號(hào)錄入重復(fù),請(qǐng)重新輸入!); break; if(j=1) continue; if(j=0) k = dd.count; strcpy(,); strcpy(dd.stuk.no,

8、st.no); strcpy(dd.stuk.ad,st.ad); dd.count+; printf(nn繼續(xù)添加學(xué)生信息1-yes 0-no:); scanf(%d,&b); if(b=0) break; save_data();/ 將數(shù)據(jù)從文件讀到結(jié)構(gòu)體數(shù)組中void read_data()FILE *fp;int i,k;struct student st;k=0;if(access(c:/dada.txt,0)=-1)/ 如果文件不存在fp=fopen(c:/dada.txt,w);fwrite(&k,sizeof(int),1,fp);fclose(fp);fp=fopen(c:/

9、dada.txt,r);fread(&k,sizeof(int),1,fp);dd.count=k;for(i=0;ik;i+)fread(&st,sizeof(struct student),1,fp);strcpy(,);strcpy(dd.stui.no,st.no); strcpy(dd.stui.ad,st.ad);fclose(fp);/ 刪除學(xué)生記錄void delete_data()int i,k;char no50;printf(n請(qǐng)輸入要?jiǎng)h除學(xué)生的學(xué)號(hào):);scanf(%s,no);k=-1;for(i=0;idd.count;i+)i

10、f(strcmp(dd.stui.no,no)=0) k=i;break;if(k=-1)printf(nn沒(méi)有找到該學(xué)生(學(xué)號(hào)-%s)!,no);elsefor(i=k;idd.count;i+) strcpy(,dd.stui+1.name); strcpy(dd.stui.no,dd.stui+1.no); strcpy(dd.stui.ad,dd.stui+1.ad);dd.count-;save_data();printf(nn刪除(學(xué)號(hào)-%s)成功!,no);/ 編輯學(xué)生記錄void edit_data()int i,k;char no50,ad20;pri

11、ntf(n請(qǐng)輸入要編輯學(xué)生的學(xué)號(hào):);scanf(%s,no);k=-1;for(i=0;idd.count;i+)if(strcmp(dd.stui.no,no)=0)k=i;break;if(k=-1)printf(nn沒(méi)有找到該學(xué)生(學(xué)號(hào)-%s)!,no);elseprintf(n姓名:%s,學(xué)號(hào):%s,,dd.stuk.no);printf(n請(qǐng)修改學(xué)生數(shù)據(jù):); printf(n籍貫:); scanf(%s,ad); strcpy(dd.stuk.ad,ad); / 查詢(學(xué)號(hào))void query_data_no()int i,k;char no50;pri

12、ntf(n請(qǐng)輸入要查詢學(xué)生的學(xué)號(hào):);scanf(%s,no);k=-1;for(i=0;idd.count;i+)if(strcmp(dd.stui.no,no)=0)printf(nn姓名t學(xué)號(hào)t籍貫);printf(n-n);k=i;printf(%st%st%sn,,dd.stui.no,dd.stui.ad);if(k=-1)printf(nn沒(méi)有找到該學(xué)生(學(xué)號(hào)-%s)!,no);/ 查詢(姓名)void query_data_name()int i,k;char name10;printf(n請(qǐng)輸入要查詢學(xué)生的姓名:);scanf(%s,name);k=-

13、1;for(i=0;idd.count;i+)if(strcmp(,name)=0)printf(nn姓名t學(xué)號(hào)t籍貫);printf(n-n);k=i;printf(%st%st%sn,,dd.stui.no,dd.stui.ad);if(k=-1)printf(nn沒(méi)有找到該學(xué)生(姓名-%s)!,name); /查詢(籍貫)void query_data_address() int i,sum=0;char ad20; printf(請(qǐng)輸入籍貫信息:); scanf(%s,ad); printf(該籍貫的學(xué)生有:); for(i=0;idd.

14、count;i+) if(strcmp(dd.stui.ad,ad)=0) printf(%st,); sum+; if(sum=0) printf( 0 人 n);/ 主函數(shù)void main()int fun;read_data();menu();while(1)printf(請(qǐng)輸入功能號(hào)0-7:,&fun);scanf(%d,&fun);switch(fun)case 0:/ 退出break;case 1:/ 查看所有學(xué)生信息view_data();break;case 2:/ 輸入學(xué)生記錄add_data();break;case 3:/ 刪除學(xué)生記錄delet

15、e_data();break;case 4:/ 編輯學(xué)生記錄edit_data();break;case 5:/ 查詢(學(xué)號(hào))query_data_no();break; case 6:/ 查詢(姓名) query_data_name();break; case 7:/ 查詢(籍貫)query_data_address(); break;if(fun=0) break;to_menu(); 6.結(jié)論各項(xiàng)功能均能實(shí)現(xiàn),但程序存在缺陷,如錄入重復(fù)學(xué)號(hào),沒(méi)有出現(xiàn)提示功能,需要修改和完善。7.參考資料C語(yǔ)言設(shè)計(jì)第三版 清華大學(xué)出版社出版8.后記雖然該系統(tǒng)可以運(yùn)行最基本的功能,但該系統(tǒng)仍然有不完善之處,有待添加更豐富的功能.感謝康亞男老師給與的細(xì)心指導(dǎo),感謝同伴的積極配合共同完成了程序.9.附錄系統(tǒng)公共數(shù)據(jù)結(jié)構(gòu)如下:#difine MAX300 定義常量N表示可錄入最大學(xué)生數(shù)int i,j、k,sum, i

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論