C語言學生成績管理系統(tǒng)課程設(shè)計報告_第1頁
C語言學生成績管理系統(tǒng)課程設(shè)計報告_第2頁
C語言學生成績管理系統(tǒng)課程設(shè)計報告_第3頁
C語言學生成績管理系統(tǒng)課程設(shè)計報告_第4頁
C語言學生成績管理系統(tǒng)課程設(shè)計報告_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、C語言課程設(shè)計報告一.問題描述:題目七:學生成績管理系統(tǒng)設(shè)計 學生成績信息包括:學期,學號,班別,姓名,四門課程成績(語文、數(shù)學、 英語和計算機)等。主要功能:(1)能按學期、按班級完成對學生成績的錄入、修改(2)能按班級統(tǒng)計學生的成績,求學生的總分及平均分(3)能查詢學生成績,不及格科目及學生名單(4)能按班級輸出學生的成績單 要求:使用二進制文件方式存儲數(shù)據(jù),系統(tǒng)以菜單方式工作 學生成績信息包括:學期,學號,班別,姓名,四門課程成績(語文、數(shù)學、英語和計算機)等。要求使用二進制文件方式存儲數(shù)據(jù),系統(tǒng)以菜單方式工作, 實現(xiàn)對學生成績的錄入,修改,統(tǒng)計,排序,查詢,輸出等功能。二.設(shè)計目的設(shè)計

2、“學生成績管理系統(tǒng)”使其具有以下功能:(1)能完成對學生成績的錄入(2)能按班級統(tǒng)計學生的成績,求學生的總分及平均分,排序(3)能按班級,學期輸出學生的成績單和不及格科目及學生名單(4)能查詢單個學生成績(5)能修改單個學生信息三.要求系統(tǒng)以菜單方式工作四.功能1輸入功能:可以一次完成無數(shù)條信息的輸入。2輸出功能:能按班級輸出學生的成績單。3修改功能:完成對單個學生成績的修改。4查找功能:完成對單個學生信息查找,并顯示。5排序功能:按學生成績進行排序,并顯示。6有一個清晰美觀界面來調(diào)用各個功能五模塊圖信息錄入學號stui.num、班級stui.classes,姓名voidinputstui.n

3、ame、四門課成績stui.score按班級統(tǒng)計學生的成績,求學生的總分及平均分,排序能按班級,學期輸出學生成績單和不及格科目及學生名單成績統(tǒng)計voidsort成績輸出voidpri nt修改修改單個學生信息六.詳細內(nèi)容voidmo nify整個系統(tǒng)除了主函數(shù)外,另外還有5個函數(shù),實現(xiàn)六大功能:輸入功能、 輸出功能、修改功能,查找并顯示功能、排序并顯示功能。各個函數(shù)的詳細 設(shè)計說明分別如下:1.定義結(jié)構(gòu)體及宏定義#i nclude#in clude#i ncludevstri ng.h#defi neNUM100structstudent intterm;intnum; intclasses;

4、 charname10; intscore4;intsum; floataverage;stuNUM;2主函數(shù)main()利用無限次循環(huán)for(;)和swithch()進行菜單選擇來實現(xiàn)各函數(shù)的調(diào)用,系 統(tǒng)根據(jù)輸入的數(shù)字選項來調(diào)用相應的函數(shù)。等執(zhí)行完每一個函數(shù)功能后, 按任一鍵回到主界面也要通過這個函數(shù)來實現(xiàn)!voidmain()zcd();/*主函數(shù)界面*/voidzcd()intn=0;charm;system(cls);/*清屏*/printf(按任一鍵進入主菜單n);/*按任一鍵進入主菜單*/*printf(tt華中科技大學文華學院歡迎您printf(nttt-歡迎使用學生管理系統(tǒng)nn

5、ttttt-n);*n);printf(ttt1.輸入學生成績記錄Inputtherecordn);/*輸入學生成績記錄*/ printf(ttt2.排序并顯示Sorttomakenewafilen);/*排序*/printf(ttt3.按班級顯示成績單Printtherecordn);/*顯示*/printf(ttt4.查找個人成績Searchrecordonnamen);/查找*/ printf(ttt5.修改Modifyarecordn);/*修改*/ printf(ttt6.退出Quitn);/*退出*/f* fflush(stdin);m=getchar(); doswitch(m)

6、case1:input();zcd();break;*n);printf(n);printf(*MENU*printf(*n);printf(nttt輸入你的選擇Enteryourchoice(17):);case2:sort();system(pause);zcd();break; case3:print();system(pause);break;case4:search();zcd();break; case5:modify();system(pause);zcd();break;case6:exit(0);/*如菜單返回值為7則程序結(jié)束*/ default:printf(錯誤命令”);

7、getchar();zcd();while(1);3輸入信息函數(shù)voidinput()system(cls);inti;chara;for(i=0;iNUM;i+) printf(n請輸入學生的學期:); scanf(%d,&stui.term); printf(n請輸入學生的學號:);fflush(stdin); scanf(%d,&stui.num); printf(n請輸入學生的班級:);scanf(%d,&stui.classes); printf(n請輸入學生的姓名:); scanf(%s,); printf(n請輸入學生的語文成績:); s

8、canf(%d,&stui.score0); printf(n請輸入學生的數(shù)學成績:);scanf(%d,&stui.score1); printf(n請輸入學生的英語成績:); scanf(%d,&stui.score2);printf(n請輸入學生的計算機成績:); scanf(%d,&stui.score3);stui.sum=stui.score0+stui.score1+stui.score2+stui.score3;/算總分 和平均stui.average=(float)stui.sum/4.0;printf(是否要繼續(xù)添加(按N&n退出);

9、 fflush(stdin); a=getchar();if(a=n|a=N)break;4、排序并顯示函數(shù)voidsort()inti,j=0;floattemp;for(i=0;iNUM;i+)stui.sum=stui.score0+stui.score1+stui.score2+stui.score3;stui.average=(float)stui.sum/4.0;for(i=0;iNUM-1;i+)for(j=i+1;jNUM;j+)if(stui.sumstuj.sum)temp=stui.sum;stui.sum=stuj.sum;stuj.sum=temp;printf(學號

10、t姓名t班級語文數(shù)學英語計算機總分平均分n);for(i=0;iNUM;i+)printf(%dt%st%d%5d%5d%5d%6d%7d%8.2fn,stui.num,,stui.class es,stui.score0,stui.score1,stui.score2,stui.score3,stui.sum,stu i.average);/*輸出學生信息*/system(pause);system(cls);print();5查找并顯示一個記錄voidsearch()system(cls);/*清屏*/intnumber=0,i;printf(ttt請輸入要查找學生的學號

11、:); scanf(%d,&number);printf(學號t姓名t班級語文數(shù)學英語計算機總分平均分n); for(i=0;iNUM;i+)if(number=stui.num)break;/*查找判斷*/if(iNUM)printf(%dt%st%d%5d%5d%5d%6d%7d%8.2fn,stui.num,,stui .classes,stui.score0,stui.score1,stui.score2,stui.score3,stui.sum,stui .average);/*輸出學生信息*/elseprintf(沒找到該學生的信息n); system(p

12、ause);6按學期、按班級輸出成績函數(shù)voidprint()system(cls);chara;printf(1、按學期輸出n);printf(2、按班級輸出n);printf(3、返回n);fflush(stdin);a=getchar();switch(a)case1:print1();case2:print2();case3:zcd();default:print();voidpri nt1() 按學期inti,m;printf(請輸入學期:n);scanf(%d,&m);printf(學號t姓名t班級語文數(shù)學英語計算機總分平均分n); for(i=0;iNUM;i+)if(m

13、=stui.term)printf(%dt%st%d%5d%5d%5d%6d%7d%8.2fn,stui.num,,stui.classes,stui.score0,stui.score1,stui.score2,stui.score3,stui.sum,stui.a verage);/*輸出學生信息*/system(pause);system(cls);print();voidpri nt2() 按班級inti,j,k;printf(請輸入班級:n);scanf(%d,&k);printf(學號t姓名t班級語文數(shù)學英語計算機總分平均分n);for(i=0;iNUM;

14、i+)if(k=stui.classes)stui.sum=stui.score0+stui.score1+stui.score2+stui.score3;stui.average=stui.sum/4.0;printf(%dt%st%d%5d%5d%5d%6d%7d%8.2fn,stui.num,,stui.class es,stui.score0,stui.score1,stui.score2,stui.score3,stui.sum,stui.averag e);/*輸出學生信息*/printf(輸出不及格學生名單及成績:n);printf(學號t姓名t班級語文數(shù)學英語

15、計算機n); for(i=0;iNUM;i+)for(j=0;j4;j+)if(stui.scorej60&k=stui.classes)/*輸出不及格學生名單及成績*/printf(%dt%st%d%5d%5d%5d%6dn,stui.num,,stui.classes,stui.score0,stui.score1,stui.score2,stui.score3);break;system(pause);system(cls);print();7修改成績函數(shù)voidmodify()system(cls);intnumber,i; printf(ttt請輸入要修改信

16、息的學生學號:); scanf(ttt%d,&number);for(i=0;iNUM;i+) if(number=stui.num)break;/*查找判斷*/if(iNUM)/*查找判斷*/printf(請輸入修改后的學生的信息:); printf(n請輸入學生的學期:);scanf(%d,&stui.term);printf(n請輸入學生的學號:); fflush(stdin);scanf(%d,&stui.num);printf(n請輸入學生的班級:); scanf(%d,&stui.classes);printf(n請輸入學生的姓名:); scanf(

17、%s,);printf(n請輸入學生的語文成績:);scanf(%d,&stui.score0);printf(n請輸入學生的數(shù)學成績:);scanf(%d,&stui.score1);printf(n請輸入學生的英語成績:); scanf(%d,&stui.score2); printf(n請輸入學生的計算機成績:);scanf(%d,&stui.score3);elseprintf(沒找到該學生的信息n); system(paues);system(cls);zcd();七運行過程主菜單仁CAADocuients aid SEttin識Ai

18、iiniHrMoiA天天天童敝苜Uklm認輕算-超$|13 Input the record顯不Sort to nake new a file並戒肄Printthe record人曬Search record onname緻Nodifji a record刖Quit成績錄入統(tǒng)計排序按學期輸出成績按班級輸出成績查找個人成績修改單個學生信息八.設(shè)計總結(jié)經(jīng)過幾周的課程設(shè)計,我學到了很多東西:1鞏固和加深了對編程的理解,提高綜合運用本課程所學知識的能力。2培養(yǎng)了我選用參考書,查閱手冊及文獻資料的能力。培養(yǎng)獨立思考,深入研究,分析問題、解決問題的能力。3經(jīng)過實際編譯系統(tǒng)的分析設(shè)計、編程調(diào)試,掌握應用軟件的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論