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

下載本文檔

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

文檔簡介

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

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

3、錄入void input成績統(tǒng)計(jì)voidsort成績輸出void print查詢voidsearch修改voidmo nify班級 intclasses姓名 charname10學(xué)號intnum成績 in tscore4學(xué)號 stui.num、班級 stui.classes ,姓名、四門課成績 stui.score按班級統(tǒng)計(jì)學(xué)生的成績,求學(xué)生的總分及平均分,排序能按班級,學(xué)期輸出學(xué)生成績單和不及格科目及學(xué)生名單能按學(xué)號查詢單個(gè)學(xué)生成績修改單個(gè)學(xué)生信息六.詳細(xì)內(nèi)容整個(gè)系統(tǒng)除了主函數(shù)外,另外還有 輸出功能、修改功能,查找并顯示功能、 設(shè)計(jì)說明分別如下:5個(gè)函數(shù),實(shí)現(xiàn)六大功能:輸入

4、功能、 排序并顯示功能。各個(gè)函數(shù)的詳細(xì)1.定義結(jié)構(gòu)體及宏定義#i ncludevstdlib.h>#i ncludevstdio.h> #in clude<stri ng.h> #defi neNUM100structstudent intterm;intnum; intclasses; charname10; intscore4;intsum; floataverage;stuNUM;2主函數(shù) main()利用無限次循環(huán)for(;)和swithch()進(jìn)行菜單選擇來實(shí)現(xiàn)各函數(shù)的調(diào)用,系 統(tǒng)根據(jù)輸入的數(shù)字選項(xiàng)來調(diào)用相應(yīng)的函數(shù)。等執(zhí)行完每一個(gè)函數(shù)功能后, 按任一鍵回到主界

5、面也要通過這個(gè)函數(shù)來實(shí)現(xiàn)!voidmain()zcd();/*主函數(shù)界面 */voidzcd()intn=0;charm;system("cls");/* 清屏 */printf("按任一鍵進(jìn)入主菜單n");/*按任一鍵進(jìn)入主菜單*/ printf("* *n");printf("tt 華中科技大學(xué)文華學(xué)院歡迎您 n"); printf("nttt 歡迎使用學(xué)生管理系統(tǒng) nntttttn");printf("*MENU*n");printf("ttt1.輸入學(xué)生成績

6、記錄Inputtherecord'n");/*輸入學(xué)生成績記錄*/ printf("ttt2.排序并顯示 Sorttomakenewafile'n");/*排序 */printf("ttt3.按班級顯示成績單 Printtherecordn");/* 顯示 */printf("ttt4.查找個(gè)人成績 Searchrecordonnamen");/查找*/ printf("ttt5. 修改 Modifyarecordn");/* 修改*/ printf("ttt6. 退出 Quit

7、n");/* 退出*/ printf("* *n");printf("nttt 輸入你的選擇 Enteryourchoice(17):");fflush(stdin);m=getchar();doswitch(m)case'1':input();zcd();break; case'2':sort();system("pause");zcd();break;case'3':print();system("pause");break; case'4

8、9;:search();zcd();break; case'5':modify();system("pause");zcd();break; case'6':exit(0);/*如菜單返回值為7則程序結(jié)束*/default:printf("錯(cuò)誤命令");getchar();zcd();while(1);3 輸入信息函數(shù)voidinput()system("cls");inti;chara;for(i=0;i<NUM;i+)printf("n 請輸入學(xué)生的學(xué)期: "); scan

9、f("%d",&stui.term);printf("n 請輸入學(xué)生的學(xué)號: "); fflush(stdin); scanf("%d",&stui.num); printf("n 請輸入學(xué)生的班級: "); scanf("%d",&stui.classes); printf("n 請輸入學(xué)生的姓名: "); scanf("%s",);printf("n 請輸入學(xué)生的語文成績:scanf("%d

10、",&stui.score0);printf("n 請輸入學(xué)生的數(shù)學(xué)成績:scanf("%d",&stui.score1);printf("n 請輸入學(xué)生的英語成績:scanf("%d",&stui.score2);");");");");printf("n 請輸入學(xué)生的計(jì)算機(jī)成績:scanf("%d",&stui.score3); stui.sum=stui.score0+stui.score1+stui.score2+s

11、tui.score3;/ 算總分 和平均stui.average=(float)stui.sum/4.0;printf("是否要繼續(xù)添加(按N&n退出)"); fflush(stdin);a=getchar();if(a='n'|a='N')break;4、排序并顯示函數(shù)voidsort()inti,j=0;floattemp;for(i=0;i<NUM;i+)stui.sum=stui.score0+stui.score1+stui.score2+stui.score3;stui.average=(float)stui.sum

12、/4.0;for(i=0;i<NUM-1;i+)for(j=i+1;j<NUM;j+)if(stui.sum<stuj.sum)temp=stui.sum;stui.sum=stuj.sum;stuj.sum=temp;printf("學(xué)號t姓名t班級語文數(shù)學(xué)英語計(jì)算機(jī)總分平均分n");for(i=0;i<NUM;i+)printf("%dt%st%d%5d%5d%5d%6d%7d%8.2fn",stui.num,,stui.classes,stui.score0,stui.score1,stui.score2,

13、stui.score3,stui.sum,stu i.average);/* 輸出學(xué)生信息 */system("pause");system("cls");print();5 查找并顯示一個(gè)記錄voidsearch()system("cls");/* 清屏 */intnumber=0,i;printf("ttt 請輸入要查找學(xué)生的學(xué)號 :");scanf("%d",&number);printf("學(xué)號t姓名t班級語文數(shù)學(xué)英語計(jì)算機(jī)總分平均分n"); for(i=0;

14、i<NUM;i+)if(number=stui.num)break;/* 查找判斷 */ if(i<NUM)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);/*輸出學(xué)生信息*/elseprintf(" 沒找到該學(xué)生的信息 n"); system("pause");6按學(xué)期、按班級輸出成績

15、函數(shù)voidprint()system("cls");chara;printf("1 、按學(xué)期輸出 n");printf("2 、按班級輸出 n");printf("3 、返回 n");fflush(stdin);a=getchar();switch(a)case'1':print1();case'2':print2();case'3':zcd();default:print();voidprint1()/ 按學(xué)期inti,m;printf(" 請輸入學(xué)期:

16、 n");scanf("%d",&m);printf("學(xué)號t姓名t班級語文數(shù)學(xué)英語計(jì)算機(jī)總分平均分n");for(i=0;i<NUM;i+)if(m=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);/*輸出學(xué)生信息*/system("pause&

17、quot;);system("cls");print();void prin t2()/ 按班級inti,j,k;printf("請輸入班級:n");scanf("%d",&k);printf("學(xué)號t姓名t班級語文數(shù)學(xué)英語計(jì)算機(jī)總分平均分n");for(i=0;i<NUM;i+)if(k=stui.classes) stui.sum=stui.score0+stui.score1+stui.score2+stui.score3; stui.average=stui.sum/4.0;printf(&q

18、uot;%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);/* 輸出學(xué)生信息 */printf(" 輸出不及格學(xué)生名單及成績: n");printf("學(xué)號t姓名t班級語文數(shù)學(xué)英語計(jì)算機(jī)n");for(i=0;i<NUM;i+)for(j=0;j<4;j+)if(stui.scorej<60&&

19、;k=stui.classes)/* 輸出不及格學(xué)生名單及成績 */ 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 請輸入要修

20、改信息的學(xué)生學(xué)號 :");scanf("ttt%d",&number);for(i=0;i<NUM;i+)if(number=stui.num)break;/* 查找判斷 */ if(i<NUM)/* 查找判斷 */printf(" 請輸入修改后的學(xué)生的信息: ");printf("n 請輸入學(xué)生的學(xué)期: ");scanf("%d",&stui.term);printf("n 請輸入學(xué)生的學(xué)號:fflush(stdin);scanf("%d",&a

21、mp;stui.num);printf("n 請輸入學(xué)生的班級:scanf("%d",&stui.classes);printf("n 請輸入學(xué)生的姓名:scanf("%s",);");");");printf("n 請輸入學(xué)生的語文成績:scanf("%d",&stui.score0);printf("n 請輸入學(xué)生的數(shù)學(xué)成績:scanf("%d",&stui.score1);printf("n 請輸入學(xué)生的英語成績:scanf("%d",&stui.score2);printf("n 請輸入學(xué)生的計(jì)算機(jī)成績:scanf("%d",&stui.score3);else");");");");printf(" 沒找到該學(xué)生的信息 n"); system("paues");system(&quo

溫馨提示

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

最新文檔

評論

0/150

提交評論