C語言程序設(shè)計-基于計算思維的培養(yǎng) -實驗指導(dǎo)匯 項目1 學(xué)生成績管理系統(tǒng)V1.0 -6.0_第1頁
C語言程序設(shè)計-基于計算思維的培養(yǎng) -實驗指導(dǎo)匯 項目1 學(xué)生成績管理系統(tǒng)V1.0 -6.0_第2頁
C語言程序設(shè)計-基于計算思維的培養(yǎng) -實驗指導(dǎo)匯 項目1 學(xué)生成績管理系統(tǒng)V1.0 -6.0_第3頁
C語言程序設(shè)計-基于計算思維的培養(yǎng) -實驗指導(dǎo)匯 項目1 學(xué)生成績管理系統(tǒng)V1.0 -6.0_第4頁
C語言程序設(shè)計-基于計算思維的培養(yǎng) -實驗指導(dǎo)匯 項目1 學(xué)生成績管理系統(tǒng)V1.0 -6.0_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

學(xué)生成績管理系統(tǒng)V1.0一、問題描述n507.5~7.10(1)鍵盤輸入每個學(xué)生的學(xué)號和成績;(2)計算該班高等數(shù)學(xué)課程的總分和平均分;(3)按成績由高到低排出名次;(4)按學(xué)號由小到大排出成績表;(5)按學(xué)號查找學(xué)生排名和成績;(~(~~(~)5個等級,統(tǒng)計每個等級的人數(shù)及其所占的百分比;(7)輸出每個學(xué)生的學(xué)號、考試成績、課程總分和平均分。問題拓展:如果要求程序運(yùn)行后先顯示如下菜單,并提示用戶輸入選項:TheStudent'sGradeManagementSystem*************************************Menu******************************1.Enterrecord 2.Caculatetotal&averagescore *3.Sortindescendingorderbyscore 4.Sortinascendingorderbynumber*5.Searchbynumber 6.Statisticalanalysis *7.Listrecord 0.Exit **************************************************************************然后根據(jù)用戶輸入的選項執(zhí)行相應(yīng)的操作,那么程序該如何實現(xiàn)?二、相關(guān)知識點(1)選擇結(jié)構(gòu)(2)循環(huán)結(jié)構(gòu)(3)函數(shù)(4)數(shù)組三、任務(wù)分析(1)某班高數(shù)成績和學(xué)號分別用一維數(shù)組表示;(2)這個學(xué)生成績管理系統(tǒng)中要實現(xiàn)8個功能:輸入學(xué)號和成績、總分、平均分、成績排序、學(xué)號排序、查找、統(tǒng)計、顯示學(xué)生考試信息。(itRedr(itscr[],lgu[2)floatGetAverage(intscore[intn);3)voidSortScore(intscore[longnum[],intn)、4)學(xué)號排序voidSoreNum(intscore[],longnum[],intn);5)查找intSearch(longnum[],longx,intn);6)voidStatAnalysis(intscore[],intcount[],intn);7)顯示學(xué)生考試信息voidPrintInfo(intscore[],longnum[],intn)基礎(chǔ)部分:頭文件#include<stdio.h>函數(shù)/*函數(shù)功能:輸入n個學(xué)生的一門課成績、學(xué)號*/intReadScore(inta[],longnum[]){inti=-1;/*i-110i*/printf("Inputscores:\n");do{//學(xué)生數(shù)增1//輸入一個學(xué)生的學(xué)號和成績}while(00);return;}/*計算n個學(xué)生成績的平均分*/floatGetAverage(inta[],intn){//isum{//計算總分}//輸出總分//返回平均分}/*函數(shù)功能:按成績升序排序*/voidSortScore(inta[],longnum[],intn){//定義循環(huán)變量i,j和成績臨時變量temp1//定義學(xué)號臨時變量temp2for(i=0;i<n-1;i++){//設(shè)置k的值for(j=i+1;j<n;j++){if(成績比較){//修改k}}if(k!=i){/*交換成績*///coding/*交換學(xué)號*///coding}}}/*函數(shù)功能:按學(xué)號升序排序*/voidSortNum(inta[],longnum[],intn){//定義循環(huán)變量i,j和成績臨時變量temp1//定義學(xué)號臨時變量temp2for(i=0;i<n-1;i++){//設(shè)置k的值for(j=i+1;j<n;j++){if(學(xué)號比較){//修改k}}if(k!=i){/*交換學(xué)號*///coding/*交換成績*///coding}}}/*函數(shù)功能:打印學(xué)生學(xué)號及成績*/voidPrintInfo(inta[],longnum[],intn){inti;for(i=0;i<n;i++){//依次顯示學(xué)號、成績}//顯示課程總分、平均分printf("\n");}/*函數(shù)功能:用線性查找法查找值(學(xué)號)為x的數(shù)組元素*/intLinearSearch(longnum[],longx,intn){inti;for(i=0;i<n;i++){if(比較要找的學(xué)號){/*若找到返回x在數(shù)組中的下標(biāo)*/}}/*若循環(huán)結(jié)束仍未找到,則返回-1*/}/*函功:計個級的數(shù)其占百比*/void StatAnalysis(inta[],intcount[],intn){inti;for(i=0;i<5;i++){//初始化成績等級數(shù)組count,count[i]分別表示每個等級的人數(shù)}for(i=0;i<n;i++){if(成績超過某個范圍)//優(yōu)秀人數(shù)累加elseif(成績超過某個范圍)//良好人數(shù)累加elseif(成績超過某個范圍)//中等人數(shù)累加elseif(成績超過某個范圍)//及格人數(shù)累加else}

//不及格人數(shù)累加printf("優(yōu)秀人數(shù):%d\t,優(yōu)秀率為%.2f%%\n",?,?);printf("良好人數(shù):%d\t,良好率為%.2f%%\n",?,?);printf("中等人數(shù):%d\t,中等率為%.2f%%\n",?,?);printf("及格人數(shù):%d\t,及格率為%.2f%%\n",?,?);printf("不及格人數(shù):%d\t,不及格率為%.2f%%\n",?,?);}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義平均分變量aver并初始化printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(1){//輸入待執(zhí)行功能的序號chswitch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用平均分函數(shù)//顯示平均分break;case'3'://調(diào)用按成績排序函數(shù)printf("SortedScores:\n");//顯示按成績排序后的學(xué)生信息break;case'4'://調(diào)用按學(xué)號排序函數(shù)printf("SortedNum:\n");//顯示按學(xué)號排序后的學(xué)生信息break;case'5':printf("pleaseinputthesearchedstudent'snum:'");//輸入待查找的學(xué)號//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld",?,?);break;case'6'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'7'://顯示所有學(xué)生成績和學(xué)號信息//課程總分、平均分break;case'0':exit(0); /**/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}高級部分:/*系統(tǒng)界面*/charMenu(){//定義代表選擇功能的字符變量chprintf("\n\n");printf("TheStudent'sGradeManagementSystem\n");printf("\n\n");printf("*****************************Menu****************************\n");//按菜單格式輸入提示功能選擇printf("**************************************************************\n");printf("\nPleaseenteryourchoice:");//輸入你的功能選擇//返回你的功能選擇;}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義平均分變量aver并初始化printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(1){/*調(diào)用顯示菜單函數(shù),并讀取用戶輸入*/switch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用平均分函數(shù)//顯示平均分break;case'3'://調(diào)用按成績排序函數(shù)printf("SortedScores:\n");//顯示按成績排序后的學(xué)生信息break;case'4'://調(diào)用按學(xué)號排序函數(shù)printf("SortedNum:\n");//顯示按學(xué)號排序后的學(xué)生信息break;case'5':printf("pleaseinputthesearchedstudent'snum:'");//輸入待查找的學(xué)號//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld",?,?);break;case'6'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'7'://顯示所有學(xué)生成績和學(xué)號信息break;case'0':exit(0); /**/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}學(xué)生成績管理系統(tǒng)V2.0一、問題描述n508.7(1)鍵盤輸入每個學(xué)生的學(xué)號和成績;(2)計算該班高等數(shù)學(xué)課程的總分和平均分;(3)按成績由高到低排出名次;(4)計算最高分及其相應(yīng)學(xué)號;(5)計算最低分及其相應(yīng)學(xué)號;(6)統(tǒng)計高于平均分的人數(shù)及其所占的百分比;(~(~~(~)5個等級,統(tǒng)計每個等級的人數(shù)及其所占的百分比;(8)輸出每個學(xué)生的學(xué)號、考試成績、課程總分和平均分。問題拓展:如果要求程序運(yùn)行后先顯示如下菜單,并提示用戶輸入選項:TheStudent'sGradeManagementSystem*************************************Menu******************************1.Enterrecord 2.Caculatetotal&averagescore *3.Sortindescendingorderbyscore 4.Caculatemax&number *5.Caculatemin&number 6.Statisticalaverageanalysis *7.Statisticalanalysis 8.Listrecord *0.Exit **************************************************************************然后根據(jù)用戶輸入的選項執(zhí)行相應(yīng)的操作,那么程序該如何實現(xiàn)?二、相關(guān)知識點(1)選擇結(jié)構(gòu)(2)循環(huán)結(jié)構(gòu)(3)函數(shù)(4)數(shù)組(5)指針三、任務(wù)分析(1)某班高數(shù)成績和學(xué)號分別用一維數(shù)組表示、因為函數(shù)無法通過return語句返回兩個不同類型的值,故最高分/最低分及其學(xué)號分別用兩個指針做函數(shù)參數(shù);(2)這個學(xué)生成績管理系統(tǒng)中要實現(xiàn)8個功能:輸入學(xué)號和成績、總分、平均分、成績排序、最高分、最低分、統(tǒng)計平均分、成績等級統(tǒng)計分析、顯示學(xué)生考試信息。(itRedr(itscr[],lgu[2)平均分floatGetAverage(intscore[],intn);3)成績排序voidSortScore(intscore[],intn)、4)最高分voidGetMaxScore(intscore[],longnum[],intn,int*pmaxscore,long*pmaxnum);5)最低分voidGetMinScore(intscore[],longnum[],intn,int*pminscore,long*pminnum);6)voidStatAverage(intscore[intn);7)voidStatAnalysis(intscore[intcountintn);8)voidPrintInfo(intscore[],longnum[],intn)基礎(chǔ)部分:頭文件#include<stdio.h>函數(shù)/*函數(shù)功能:輸入n個學(xué)生的一門課成績、學(xué)號*/intReadScore(inta[],longnum[]){inti=-1;/*i-110i*/printf("Inputscores:\n");do{//學(xué)生數(shù)增1//輸入一個學(xué)生的學(xué)號和成績}while(學(xué)號大于等于0,同時成績大于等于0);return學(xué)生數(shù);}/*計算n個學(xué)生成績的平均分*/floatGetAverage(inta[],intn){//isum{//計算總分}//輸出總分//返回平均分}/*函數(shù)功能:按成績升序排序*/voidSortScore(inta[],longnum[],intn){//定義循環(huán)變量i,j和成績臨時變量temp1//定義學(xué)號臨時變量temp2for(i=0;i<n-1;i++){//設(shè)置k的值for(j=i+1;j<n;j++){if(成績比較){//修改k}}if(k!=i){/*交換成績*///coding/*交換學(xué)號*///coding}}}/*函數(shù)功能:計算最高分及其學(xué)號*/voidGetMaxScore(intscore[],longnum[],intn,int*pmaxscore,long*pmaxnum){//定義循環(huán)變量i//score[0]的成績賦值給pmaxscore指針//num[0]的學(xué)號賦值給pmaxnum指針for(i=0;i<n;i++){if(某個學(xué)生成績大于pmaxscore指針?biāo)赶虻闹?{//更新pmaxscore指針?biāo)赶虻闹?/更新pmaxnum指針?biāo)赶虻闹祡}}/*函數(shù)功能:計算最低分及其學(xué)號*/voidGetMinScore(intscore[],longnum[],intn,int*pminscore,long*pminnum){//定義循環(huán)變量i//score[0]的成績賦值給pminscore指針//num[0]的學(xué)號賦值給pminnum指針for(i=0;i<n;i++){if(某個學(xué)生成績小于pminscore指針?biāo)赶虻闹?{//更新pminscore指針?biāo)赶虻闹?/更新pminnum指針?biāo)赶虻闹祡}}/*函數(shù)功能:統(tǒng)計高于平均分的人數(shù)及其所占的百分比*/voidStatAverage(intscore[],intn){//定義循環(huán)變量i,平均分人數(shù)變量count;//定義平均分變量av;//調(diào)用計算平均分函數(shù)for(i=0;i<n;i++){if(某個學(xué)生成績大于等于平均分)//平均分人數(shù)增1}printf(“高于平均分人數(shù)=%d\t所占百分比=%.2f\n”,?,?);}/*函數(shù)功能:打印學(xué)生學(xué)號及成績、課程總分、平均分*/voidPrintInfo(inta[],longnum[],intn){inti;for(i=0;i<n;i++){//依次顯示學(xué)號、成績}//顯示課程總分、平均分printf("\n");}/*函功:計個級的數(shù)其占百比*/void StatAnalysis(inta[],intcount[],intn){inti;for(i=0;i<5;i++){//初始化成績等級數(shù)組count,count[i]分別表示每個等級的人數(shù)}for(i=0;i<n;i++){if(成績超過某個范圍)//優(yōu)秀人數(shù)累加elseif(成績超過某個范圍)//良好人數(shù)累加elseif(成績超過某個范圍)//中等人數(shù)累加elseif(成績超過某個范圍)//及格人數(shù)累加else}

//不及格人數(shù)累加printf("優(yōu)秀人數(shù):%d\t,優(yōu)秀率為%.2f%%\n",?,?);printf("良好人數(shù):%d\t,良好率為%.2f%%\n",?,?);printf("中等人數(shù):%d\t,中等率為%.2f%%\n",?,?);printf("及格人數(shù):%d\t,及格率為%.2f%%\n",?,?);printf("不及格人數(shù):%d\t,不及格率為%.2f%%\n",?,?);}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義平均分變量aver并初始化printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(1){//輸入待執(zhí)行功能的序號chswitch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用平均分函數(shù)//顯示平均分break;case'3'://調(diào)用按成績排序函數(shù)printf("SortedScores:\n");//顯示按成績排序后的學(xué)生信息break;case'4'://調(diào)用最高分函數(shù)printf("TheMaxScore&it’sNum:\n");//顯示學(xué)生的最高分及其學(xué)號break;case'5'://調(diào)用最低分函數(shù)printf("TheMinScore&it’sNum:\n");//顯示學(xué)生的最低分及其學(xué)號break;case'6'://調(diào)用成績高于平均分人數(shù)函數(shù)break;case'7'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'8':顯示所有學(xué)生成績和學(xué)號信息break;case'0':exit(0); /*退出程序*/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}高級部分:/*系統(tǒng)界面*/charMenu(){//定義代表選擇功能的字符變量chprintf("\n\n");printf("TheStudent'sGradeManagementSystem\n");printf("\n\n");printf("*****************************Menu****************************\n");//按菜單格式輸入提示功能選擇printf("**************************************************************\n");printf("\nPleaseenteryourchoice:");//輸入你的功能選擇//返回你的功能選擇;}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義平均分變量aver并初始化printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(1){/*調(diào)用顯示菜單函數(shù),并讀取用戶輸入*/switch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用平均分函數(shù)//顯示平均分break;case'3'://調(diào)用按成績排序函數(shù)printf("SortedScores:\n");//顯示按成績排序后的學(xué)生信息break;case'4'://調(diào)用最高分函數(shù)printf("TheMaxScore&it’sNum:\n");//顯示學(xué)生的最高分及其學(xué)號break;case'5'://調(diào)用最低分函數(shù)printf("TheMinScore&it’sNum:\n");//顯示學(xué)生的最低分及其學(xué)號break;case'6'://調(diào)用成績高于平均分人數(shù)函數(shù)break;case'7'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'8':顯示所有學(xué)生成績和學(xué)號信息break;case'0':exit(0); /*退出程序*/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}學(xué)生成績管理系統(tǒng)V3.0一、問題描述n509.5(1)鍵盤輸入每個學(xué)生的學(xué)號、姓名和成績;(2)計算該班高等數(shù)學(xué)課程的總分和平均分;(3)按成績由高到低排出名次;(4)按學(xué)號由小到大排出成績表;(5)按姓名的字典順序排出成績表;(6)按學(xué)號查找學(xué)生的排名及成績;(7)按姓名查找學(xué)生的排名及成績;(8)統(tǒng)計高于平均分的人數(shù)及其所占的百分比;(~(~~(~)5個等級,統(tǒng)計每個等級的人數(shù)及其所占的百分比;(10)輸出每個學(xué)生的學(xué)號、姓名、考試成績、課程總分和平均分。問題拓展:如果要求程序運(yùn)行后,用戶先登錄如下系統(tǒng):WelcometoUseTheStudent’sGradeManagementSytem!Pleaseenteryourusername:zhangPleaseenteryourpassword(atmost15digits):******然后顯示如下菜單,并提示用戶輸入選項:TheStudent'sGradeManagementSystemTheStudent'sGradeManagementSystem*************************************Menu******************************1.Enterrecord 2.Caculatetotal&averagescore *3.Sortindescendingorderbyscore 4.Sortindescendingorderbyscore *5.Sortindictionaryorderbyname 6.Searchbynumber *7.Searchbyname 8.Statisticalaverageanalysis *9.Statisticalanalysis 10.Listrecord *0.Exit **************************************************************************然后根據(jù)用戶輸入的選項執(zhí)行相應(yīng)的操作,那么程序該如何實現(xiàn)?二、相關(guān)知識點(1)選擇結(jié)構(gòu)(2)循環(huán)結(jié)構(gòu)(3)函數(shù)(4)數(shù)組(5)字符串處理函數(shù)(6)字符數(shù)組與字符指針三、任務(wù)分析(1)某班高數(shù)成績和學(xué)號分別用一維數(shù)組表示、學(xué)生姓名用二維字符數(shù)組表示;(2)這個學(xué)生成績管理系統(tǒng)中要實現(xiàn)8個功能:輸入學(xué)號和成績、總分、平均分、成績排序、最高分、最低分、統(tǒng)計平均分、成績等級統(tǒng)計分析、顯示學(xué)生考試信息。intReadScore(intscorelongnumaram[[NflatGeag(itscre[],itvdrtcreitscore[],longnum[],charname[][N],intn)、4)voidSoreNum(intscore[],longnum[],charname[][N],intn);5)voidSoreName(intscore[],longnum[],charam[],it學(xué)號查找itaclgu[],lgx,it姓名查找itarchcrname[][N],char*x,intn);8)voidStatAverage(intscore[],intn);9)voidStatAnalysis(intscore[],intcount[],intn);10)n)(4)程序分基礎(chǔ)部分和高級部分,基礎(chǔ)部分不要求菜單。四、程序結(jié)構(gòu)基礎(chǔ)部分:頭文件#include<stdio.h>#include<string.h>函數(shù)/*函數(shù)功能:輸入n個學(xué)生的一門課成績、學(xué)號和姓名*/intReadScore(inta[],longnum[],charname[][N]){inti=-1;/*i-110i*/printf("Inputscores:\n");do{//學(xué)生數(shù)增1//輸入一個學(xué)生的學(xué)號、成績和姓名}while(學(xué)號大于等于0,同時成績大于等于0);return學(xué)生數(shù);}/*計算n個學(xué)生成績的平均分、平均分*/floatGetAverage(inta[],intn){//isum{//計算總分}//輸出總分//返回平均分}/*函數(shù)功能:按成績升序排序*/voidSortScore(inta[],longnum[],charname[][N],intn){//定義循環(huán)變量i,j和成績臨時變量temp1//定義學(xué)號臨時變量temp2//定義學(xué)生姓名臨時變量temp3for(i=0;i<n-1;i++){//設(shè)置k的值for(j=i+1;j<n;j++){if(成績比較){//修改k}}if(k!=i){/*交換成績*///coding/*交換學(xué)號*///coding/*交換姓名*///coding}}}/*函數(shù)功能:按學(xué)號升序排序*/voidSortNum(inta[],longnum[],charname[][N],intn){//定義循環(huán)變量i,j和成績臨時變量temp1//定義學(xué)號臨時變量temp2//定義學(xué)生姓名臨時變量temp3for(i=0;i<n-1;i++){//設(shè)置k的值for(j=i+1;j<n;j++){if(學(xué)號比較){//修改k}}if(k!=i){/*交換學(xué)號*///coding/*交換成績*///coding/*交換姓名*///coding}}}voidSortName(inta[],longnum[],charname[][N],intn){//定義循環(huán)變量i,j和成績臨時變量temp1//定義學(xué)號臨時變量temp2//定義學(xué)生姓名臨時變量temp3for(i=0;i<n-1;i++){for(j=i+1;j<n;j++){if(姓名i小姓名j) //符串較不用系算符{/*交姓名i與名j *///Yourcode/*交成績i與績j *///Yourcode/*交學(xué)號i與號j *///Yourcode}}}}/*函數(shù)功能:按學(xué)號查找學(xué)生的排名及成績*/intLinearSearch(longnum[],longx,intn){inti;for(i=0;i<n;i++){if(比較要找的學(xué)號){/*若找到返回x在數(shù)組中的下標(biāo)*/}}/*若循環(huán)結(jié)束仍未找到,則返回-1*/}/*函數(shù)功能:按姓名查找學(xué)生的排名及成績*/intSearch(charname[][N],char*x,intn){inti;for(i=0;i<n;i++){if(比較要找的姓名){/*若找到返回x在數(shù)組中的下標(biāo)*/}}}/*函數(shù)功能:統(tǒng)計高于平均分的人數(shù)及其所占的百分比*/voidStatAverage(intscore[],intn){//定義循環(huán)變量i,平均分人數(shù)變量count;//定義平均分變量av;//調(diào)用計算平均分函數(shù)for(i=0;i<n;i++){if(某個學(xué)生成績大于等于平均分)//平均分人數(shù)增1}printf(“高于平均分人數(shù)=%d\t所占百分比=%.2f\n”,?,?);}/*函數(shù)功能:打印學(xué)生學(xué)號及成績、課程總分、平均分*/voidPrintInfo(inta[],longnum[],intn){inti;for(i=0;i<n;i++){//依次顯示學(xué)號、成績}//顯示課程總分、平均分printf("\n");}/*函功:計個級的數(shù)其占百比*/void StatAnalysis(inta[],intcount[],intn){inti;for(i=0;i<5;i++){//初始化成績等級數(shù)組count,count[i]分別表示每個等級的人數(shù)}for(i=0;i<n;i++){if(成績超過某個范圍)//優(yōu)秀人數(shù)累加elseif(成績超過某個范圍)//良好人數(shù)累加elseif(成績超過某個范圍)//中等人數(shù)累加elseif(成績超過某個范圍)//及格人數(shù)累加else}

//不及格人數(shù)累加printf("優(yōu)秀人數(shù):%d\t,優(yōu)秀率為%.2f%%\n",?,?);printf("良好人數(shù):%d\t,良好率為%.2f%%\n",?,?);printf("中等人數(shù):%d\t,中等率為%.2f%%\n",?,?);printf("及格人數(shù):%d\t,及格率為%.2f%%\n",?,?);printf("不及格人數(shù):%d\t,不及格率為%.2f%%\n",?,?);}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義姓名數(shù)組name[][N],待查找姓名變量y;//定義平均分變量aver并初始化printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(1){//輸入待執(zhí)行功能的序號chswitch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用平均分函數(shù)//顯示平均分break;case'3'://調(diào)用按成績排序函數(shù)printf("SortedScores:\n");//顯示按成績排序后的學(xué)生信息break;case'4'://調(diào)用按學(xué)號排序函數(shù)printf("SortedNum:\n");//顯示按學(xué)號排序后的學(xué)生信息break;case'5'://調(diào)用按姓名字典順序排序函數(shù)printf("SortedName:\n");//顯示按姓名字典順序排序后的學(xué)生信息break;case'6'://調(diào)用按學(xué)號查找學(xué)生排名和成績函數(shù)printf("pleaseinputthesearchedstudent'snum:'");//輸入待查找的學(xué)號//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld\tname=%s",?,?,?);break;case'7'://調(diào)用按姓名查找學(xué)生排名和成績函數(shù)printf("pleaseinputthesearchedstudent'sname:'");//輸入待查找的姓名//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld\tname=%s",?,?,?);break;case'8'://調(diào)用成績高于平均分人數(shù)函數(shù)break;case'9'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'10':顯示所有學(xué)生成績和學(xué)號信息break;case'0':exit(0); /*退出程序*/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}高級部分:/*用戶登錄*/intLogOn(){/*定義用戶名,密碼*///Yourcodeprintf("\nPleaseenterusername:");/*輸入用戶名*///Yourcode"Peaeenerwod(atost15ginti=0;while((i>=0)&&(password[i++]=getch())!=13){if(password[i-1]=='\b'){}else}

printf("%c%c%c",'\b','\0','\b');i=i-2;printf("*");password[--i]='\0';if(用戶名為"zhang"同時密碼為"123456"){}else}

printf("\nLoggingsuccess!");return1;return0;/*系統(tǒng)界面*/charMenu(){//定義代表選擇功能的字符變量chprintf("\n\n");printf("TheStudent'sGradeManagementSystem\n");printf("\n\n");printf("*****************************Menu****************************\n");//按菜單格式輸入提示功能選擇printf("**************************************************************\n");printf("\nPleaseenteryourchoice:");//輸入你的功能選擇//返回你的功能選擇;}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義姓名數(shù)組name[][N],待查找姓名變量y;//定義平均分變量aver并初始化;//定義登錄次數(shù)變量icheck.printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(icheck<3){if(用戶名與密碼不正確)//登錄次數(shù)增1else}

break;if(icheck==3){printf("\nLogginginthreetimesinarowwasunsuccessful,exit!");exit(0);}while(1){/*調(diào)用顯示菜單函數(shù),并讀取用戶輸入*/switch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用平均分函數(shù)//顯示平均分break;case'3'://調(diào)用按成績排序函數(shù)printf("SortedScores:\n");//顯示按成績排序后的學(xué)生信息break;case'4'://調(diào)用按學(xué)號排序函數(shù)printf("SortedNum:\n");//顯示按學(xué)號排序后的學(xué)生信息break;case'5'://調(diào)用按姓名字典順序排序函數(shù)printf("SortedName:\n");//顯示按姓名字典順序排序后的學(xué)生信息break;case'6'://調(diào)用按學(xué)號查找學(xué)生排名和成績函數(shù)printf("pleaseinputthesearchedstudent'snum:'");//輸入待查找的學(xué)號//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld\tname=%s",?,?,?);break;case'7'://調(diào)用按姓名查找學(xué)生排名和成績函數(shù)printf("pleaseinputthesearchedstudent'sname:'");//輸入待查找的姓名//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld\tname=%s",?,?,?);break;case'8'://調(diào)用成績高于平均分人數(shù)函數(shù)break;case'9'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'10':顯示所有學(xué)生成績和學(xué)號信息break;case'0':exit(0); /*退出程序*/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}學(xué)生成績管理系統(tǒng)V4.0一、問題描述某班有m個學(xué)生(最多不超過50參加n門課程的期末考5(1)鍵盤輸入每個學(xué)生的學(xué)號、姓名和各科考試成績;(2)計算該班每門課的總分和平均分;(3)計算該班每個學(xué)生的總分和平均分;(4)按每個學(xué)生的總分由高到低排出名次;(5)按學(xué)號查找學(xué)生排名及其各科考試成績;(6)按姓名查找學(xué)生排名及其各科考試成績;(~~(~)5個等級,統(tǒng)計每門課程每個等級的人數(shù)及其所占的百分比;(8)輸出每個學(xué)生的學(xué)號、姓名、各科考試成績、課程總分、平均分,以及每門課的總分和平均分。要求程序運(yùn)行后,用戶先登錄如下系統(tǒng):WelcometoUseTheStudent'sGradeManagementSystem!Pleaseenterusername:zhangPleseeterpswdatst5gis:然后顯示如下菜單,并提示用戶輸入選項:TheStudent'sGradeManagementSystem***********************************Menu********************************1.Enterrecord *2.Caculatetotal&averagescoreofeachcourse *3.Caculatetotal&averagescoreofeachstudent *4.Sortinascendingorderbytotalscoreofeachstudent *5.Searchbynumber 6.Searchbyname *7.Statisticalanalysisforeverycourse *8.Listrecord 0.Exit ***************************************************************************Pleaseenteryourchoice:然后根據(jù)用戶輸入的選項執(zhí)行相應(yīng)的操作。二、相關(guān)知識點(1)選擇結(jié)構(gòu)(2)循環(huán)結(jié)構(gòu)(3)函數(shù)(4)數(shù)組(5)字符串處理函數(shù)(6)字符數(shù)組與字符指針(7)行指針與列指針(8)指針數(shù)組三、任務(wù)分析/(2)這個學(xué)生成績管理系統(tǒng)中要實現(xiàn)8個功能:輸入學(xué)號和成績、總分、平均分、成績排序、最高分、最低分、統(tǒng)計平均分、成績等級統(tǒng)計分析、顯示學(xué)生考試信息。voidReadScore(float*p)[COL],longnumchar*nameintfloatAverforStud(float*p)[COLfloatsumfloataver[intn);3)floatAverforCourse(float*p)[COLfloatsum[],floataver[],intn);4)voidSortScore(float(*p)[COL],longnum[],char*name[],floatsum[],floataver[],intn)、5)學(xué)號查找intSearchbyNum(float(*p)[COL],longnum[],longx,intn);6)姓名查找intSearchbyName(float(*p)[COL],char*name[]),char*x,intn);7)成績等級統(tǒng)計分析voidStatAnalysis(float(*p)[COL],int(*count)[COL],intn);8)顯示學(xué)生考試信息voidPrintInfo(float(*p)[COL],longnum[],char*name[],floatsum1[],floataver1[],floatsum2[],floataver2[],intn)四、程序結(jié)構(gòu)基礎(chǔ)部分:#include<stdio.h>#include<string.h>#defineROW50 #defineCOL5 函數(shù)/*n*/voidReadScore(float(*p)[COL],longnum[],char*name[],intn){inti,j;printf("Inputscores:\n");for(i=0;i<n;i++){/*依次輸入一個學(xué)生的學(xué)號、姓名*///Yourcodefor(j=0;j<COL;j++){/*依次輸入一個學(xué)生的各門課成績*///Yourcode}}/*計算n個學(xué)生成績的總分、平均分*/floatAverforStud(float(*p)[COL],floatsum[],floataver[],intn){/*定義循環(huán)變量i,j*///Yourcodefor(i=0;i<n;i++){/*對sum數(shù)組初始化*///Yourcodefor(j=0;j<COL;j++){/*計算每個學(xué)生的總分*///Yourcode}/*計算每個學(xué)生的平均分*///Yourcode}}floatAverforCourse(float(*p)[COL],floatsum[],floataver[],intn){/*定義循環(huán)變量i,j*///Yourcodefor(i=0;i<COL;i++){/*對sum數(shù)組初始化*///Yourcodefor(j=0;j<n;j++){/*計算每門課的總分*///Yourcode}/*計算每門課的平均分*///Yourcode}}/*函數(shù)功能:按成績升序排序*/voidSortScore(float(*p)[COL],longnum[],char*name[],floatsum[],floataver[],intn){//定義循環(huán)變量i,j和成績臨時變量temp1、總成績臨時變量temp2、平均分臨時變量temp3、名次臨時變量temp4//定義學(xué)號臨時變量temp5//定義學(xué)生姓名臨時變量temp6for(i=0;i<n-1;i++){//設(shè)置k的值for(j=i+1;j<n;j++){if(每個學(xué)生的總成績比較){//修改k}}if(k!=i){/*交換成績*///Yourcoding/*交換學(xué)號*///Yourcoding/*交換姓名*///Yourcoding/*交換總成績*///Yourcoding/*交換平均分*///Yourcoding/*交換名次*///Yourcoding}}}/*函數(shù)功能:按學(xué)號查找學(xué)生的排名及各科成績*/intSearchbyNum(float(*p)[COL],longnum[],longx,intn){inti,j;for(i=0;i<n;i++){if(比較要找的學(xué)號){/*若找到返回x在數(shù)組中的下標(biāo)*///Yourcode}}/*若循環(huán)結(jié)束仍未找到,則返回-1*///Yourcode/*顯示該學(xué)生的各科成績和名次*///Yourcode}/*函數(shù)功能:按姓名查找學(xué)生的排名及成績*/intSearchbyName(float(*p)[COL],char*name[]),char*x,intn){inti,j;for(i=0;i<n;i++){if(比較要找的姓名){/*若找到返回x在數(shù)組中的下標(biāo)*///Yourcode}}/*若循環(huán)結(jié)束仍未找到,則返回-1*///Yourcode/*顯示該學(xué)生的各科成績和名次*///Yourcode}/*的總分和平均分*/voidPrintInfo(float(*p)[COL],longnum[],char*name[],floatsum1[],floataver1[],floatsum2[],floataver2[],intn){inti,j;for(i=0;i<n;i++){/*依次顯示每個學(xué)生的學(xué)號、姓名、總分、平均分*///Yourcodefor(j=0;j<COL;j++){/*依次顯示每個學(xué)生的各科成績*///Yourcode}}printf("\n");for(j=0;j<COL;j++){/*依次顯示每門課的總分、平均分*///Yourcode}printf("\n");}/*函數(shù)功能:統(tǒng)計各科課程每個等級的人數(shù)及其所占的百分比*/voidStatAnalysis(float(*p)[COL],int(*count)[5],intn,intm){inti,j;for(i=0;i<n;i++) //n{for(j=0;j<5;j++){//初始化各科成績等級行指針count,*(*(count+i)+j)表示每科課程每個等級的人數(shù)}}for(i=0;i<n;i++) //{for(j=0;j<m;j++) //m{if(某課程某人的成績超過某個范圍)//優(yōu)秀人數(shù)累加elseif(某課程某人的成績超過某個范圍)//良好人數(shù)累加elseif(某課程某人的成績超過某個范圍)//中等人數(shù)累加elseif(某課程某人的成績超過某個范圍)//及格人數(shù)累加else}

//不及格人數(shù)累加printf("優(yōu)秀人數(shù):%d\t,優(yōu)秀率為%.2f%%\n",?,?);printf("良好人數(shù):%d\t,良好率為%.2f%%\n",?,?);printf("中等人數(shù):%d\t,中等率為%.2f%%\n",?,?);printf("及格人數(shù):%d\t,及格率為%.2f%%\n",?,?);printf("不及格人數(shù):%d\t,不及格率為%.2f%%\n",?,?);}}/*用戶登錄*/intLogOn(){/*定義用戶名,密碼*///Yourcodeprintf("\nPleaseenterusername:");/*輸入用戶名*///YourcodepnnPeaeenerpaod(atost15dg:inti=0;while((i>=0)&&(password[i++]=getch())!=13){if(password[i-1]=='\b'){}else}

printf("%c%c%c",'\b','\0','\b');i=i-2;printf("*");password[--i]='\0';if(用戶名為"zhang"同時密碼為"123456"){}else

printf("\nLoggingsuccess!");return1;return0;}/*系統(tǒng)界面*/charMenu(){//定義代表選擇功能的字符變量chprintf("\n\n");printf("TheStudent'sGradeManagementSystem\n");printf("\n\n");printf("*****************************Menu****************************\n");//按菜單格式輸入提示功能選擇printf("**************************************************************\n");printf("\nPleaseenteryourchoice:");/* 輸你功選擇 *///Yourcode/* 返你功選擇 *///Yourcode}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義成績數(shù)組score,學(xué)生總分?jǐn)?shù)組sum1,課程總分?jǐn)?shù)組sum2,學(xué)生數(shù)變量n,數(shù)組下標(biāo)變量pos,成績等級數(shù)組count[COL][5];//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義姓名數(shù)組name[][N],待查找姓名變量y;//定義學(xué)生平均分?jǐn)?shù)組aver1,課程平均分?jǐn)?shù)組aver2,并初始化;//定義登錄次數(shù)變量icheck;//定義名次數(shù)組order.printf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(icheck<3){if(用戶名與密碼不正確)//登錄次數(shù)增1else}

break;if(icheck==3){printf("\nLogginginthreetimesinarowwasunsuccessful,exit!");exit(0);}while(1){/*調(diào)用顯示菜單函數(shù),并讀取用戶輸入*/switch(ch){case'1'://調(diào)用ReadScore函數(shù)break;case'2'://調(diào)用每科課程總分、平均分函數(shù)//顯示每科的總分、平均分break;case'3'://調(diào)用每個學(xué)生總分、平均分函數(shù)//顯示每個學(xué)生的總分、平均分break;case'4'://調(diào)用按總成績排序函數(shù)printf("SortedScores:\n");//顯示按總成績排序后的學(xué)生信息break;case'5'://調(diào)用按學(xué)號查找學(xué)生排名和成績函數(shù)printf("pleaseinputthesearchedstudent'snum:'");//輸入待查找的學(xué)號//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld\tname=%s",?,?,?);break;case'6'://調(diào)用按姓名查找學(xué)生排名和成績函數(shù)printf("pleaseinputthesearchedstudent'sname:'");//輸入待查找的姓名//調(diào)用查找函數(shù)printf("score=%d\tnum=%ld\tname=%s",?,?,?);break;case'7'://調(diào)用統(tǒng)計分析成績函數(shù)break;case'8':/**/break;case'0':exit(0); /*退出程序*/printf("endoftheprogram!");break;default:printf("inputerror!");break;}}return0;}學(xué)生成績管理系統(tǒng)V5.0一、問題描述某班有n個學(xué)生(最多不超過50參加m門課程的期末考5(1)鍵盤輸入每個學(xué)生的學(xué)號、姓名、出生年月和各科考試成績;(2)計算該班每個學(xué)生的總分和平均分;(3)按每個學(xué)生的總分由高到低排出名次;(4)按學(xué)號查找學(xué)生排名及其各科考試成績;(5)按姓名查找學(xué)生排名及其各科考試成績;(~~(~)5個等級,統(tǒng)計每門課程每個等級的人數(shù)及其所占的百分比;(7)輸出每個學(xué)生的學(xué)號、姓名、各科考試成績、課程總分、平均分。要求程序運(yùn)行后,用戶先登錄如下系統(tǒng):WelcometoUseTheStudent'sGradeManagementSystem!Pleaseenterusername:zhangPleseeterpswdatst5gis:然后顯示如下菜單,并提示用戶輸入選項:TheStudent'sGradeManagementSystem***********************************Menu********************************1.Enterrecord *2.Calculatetotal&averagescoreofeachstudent *3.Sortinascendingorderbytotalscoreofeachstudent *4.Searchbynumber 5.Searchbyname *6.Statisticalanalysisforeverycourse *7.Listrecord 0.Exit ***************************************************************************Pleaseenteryourchoice:1.參考例11.11,用動態(tài)單向鏈表替代結(jié)構(gòu)體數(shù)組實現(xiàn)上述功能。2.在問題1的基礎(chǔ)上,增加添加記錄、刪除記錄、插入記錄功能,理解動態(tài)鏈表與結(jié)構(gòu)體數(shù)組的不同點和優(yōu)缺點。二、相關(guān)知識點(1)選擇結(jié)構(gòu)(2)循環(huán)結(jié)構(gòu)(3)函數(shù)(4)數(shù)組(5)字符串處理函數(shù)(6)指針(7)結(jié)構(gòu)體、結(jié)構(gòu)體數(shù)組、結(jié)構(gòu)體指針(8)動態(tài)內(nèi)存分配三、任務(wù)分析(1)某班學(xué)生信息用結(jié)構(gòu)體用結(jié)構(gòu)體數(shù)組表示;(2)7個功能:輸入學(xué)號//(3)1)voidReadScore(STUDENTstu[],intm,intn);2)floatAverforStud(STUDENTstu[],intm,intn);3)成voidSortScore(STUDENTstuintmintn);4)intSearchbyNum(STUDENTstulongx,intmintn);5)intSearchbyName(STUDENTstuchar*xintmintn);6)成績等級統(tǒng)計分析voidStatAnalysis(STUDENTstu[],intm,intn);7)顯示學(xué)生考試信息voidPrintInfo(STUDENTstu[],intm,intn)(4)程序分基礎(chǔ)部分和高級部分,基礎(chǔ)部分不要求使用動態(tài)內(nèi)存分配。四、程序結(jié)構(gòu)基礎(chǔ)部分:#include<stdio.h>#include<string.h>#defineROW50 #defineCOL5 typedefstructdate{intmonth;intday;intyear;}DATE;typedefstructstudent{longid;charname[20];DATEbirthday;floatscore[4];floatsum;floataver;};函數(shù)/*函數(shù)功能:輸入n個學(xué)生的學(xué)號、姓名、出生年月、4門課成績*/voidReadScore(STUDENTstu[],intm,intn){inti,j;printf("Inputscores:\n");for(i=0;i<m;i++){/*依次輸入一個學(xué)生的學(xué)號、姓名、出生年月*///Yourcodefor(j=0;j<n;j++){/*依次輸入一個學(xué)生的各門課成績*///Yourcode}}}/*n*/floatAverforStud(STUDENTstu[],intm,intn){/*定義循環(huán)變量i,j*///Yourcodefor(i=0;i<m;i++){for(j=0;j<n;j++){/*計算每個學(xué)生的總分*///Yourcode}/*計算每個學(xué)生的平均分*///Yourcode}}/*函數(shù)功能:按成績升序排序*/voidSortScore(STUDENTstu[],intm,intn){//定義循環(huán)變量i,j和結(jié)構(gòu)體臨時變量temp1for(i=0;i<n-1;i++){for(j=i+1;j<n;j++){if(第i個學(xué)生的總成績小于第j個學(xué)生的總成績){分*/}}

/*交換第i、j個學(xué)生的學(xué)號、姓名、出生年月、4門課成績、總分、平均//Yourcoding}}/*函數(shù)功能:按學(xué)號查找學(xué)生的排名及各科成績*/intSearchbyNum(STUDENTstu[],longx,intm,intn){inti,j;for(i=0;i<n;i++){if(比較要找的學(xué)號){/*若找到返回x在數(shù)組中的下標(biāo)*///Yourcode}}/*若循環(huán)結(jié)束仍未找到,則返回-1*///Yourcode/*顯示該學(xué)生的各科成績和名次*///Yourcode}/*函數(shù)功能:按姓名查找學(xué)生的排名及成績*/intSearchbyName(STUDENTstu[],char*x,intm,intn){inti,j;for(i=0;i<n;i++){if(比較要找的姓名){/*若找到返回x在數(shù)組中的下標(biāo)*///Yourcode}}/*若循環(huán)結(jié)束仍未找到,則返回-1*///Yourcode/*顯示該學(xué)生的各科成績和名次*///Yourcode}/**/voidPrintInfo(STUDENTstu[],intm,intn){inti,j;for(i=0;i<m;i++){/*依次顯示每個學(xué)生的學(xué)號、姓名、出生年月、總分、平均分*///Yourcodefor(j=0;j<n;j++){/*依次顯示每個學(xué)生的各科成績*///Yourcode}}printf("\n");}/*函數(shù)功能:統(tǒng)計各科課程每個等級的人數(shù)及其所占的百分比*/voidStatAnalysis(STUDENTstu[],intm,intn){inti,j;/*定義4門課5個等級數(shù)組count*///Yourcodefor(i=0;i<n;i++) //n{for(j=0;i<5;i++){/*初始化各科5個成績等級數(shù)組count*///Yourcode}}for(i=0;i<n;i++) //{for(j=0;j<m;j++) //m{if(某人某課程的成績超過某個范圍)//優(yōu)秀人數(shù)累加elseif(某人某課程的成績超過某個范圍)//良好人數(shù)累加elseif(某人某課程的成績超過某個范圍)//中等人數(shù)累加elseif(某人某課程的成績超過某個范圍)//及格人數(shù)累加else}

//不及格人數(shù)累加printf("優(yōu)秀人數(shù):%d\t,優(yōu)秀率為%.2f%%\n",?,?);printf("良好人數(shù):%d\t,良好率為%.2f%%\n",?,?);printf("中等人數(shù):%d\t,中等率為%.2f%%\n",?,?);printf("及格人數(shù):%d\t,及格率為%.2f%%\n",?,?);printf("不及格人數(shù):%d\t,不及格率為%.2f%%\n",?,?);}}/*用戶登錄*/intLogOn(){/*定義用戶名,密碼*///Yourcodeprintf("\nPleaseenterusername:");/*輸入用戶名*///YourcodepnnPeaeenerpaod(atost15dg:inti=0;while((i>=0)&&(password[i++]=getch())!=13){if(password[i-1]=='\b'){}else}

printf("%c%c%c",'\b','\0','\b');i=i-2;printf("*");password[--i]='\0';if(用戶名為"zhang"同時密碼為"123456"){}else}

printf("\nLoggingsuccess!");return1;return0;/*系統(tǒng)界面*/charMenu(){//定義代表選擇功能的字符變量chprintf("\n\n");printf("TheStudent'sGradeManagementSystem\n");printf("\n\n");printf("*****************************Menu****************************\n");//按菜單格式輸入提示功能選擇printf("**************************************************************\n");printf("\nPleaseenteryourchoice:");/* 輸你功選擇 *///Yourcode/* 返你功選擇 *///Yourcode}/* 主數(shù) */intmain(){printf("\nPleaseenteryourchoice:");//定義字符變量ch,ch表示待執(zhí)行功能的序號,如1、2、…//定義學(xué)生結(jié)構(gòu)體stu;//定義學(xué)號數(shù)組num[N],待查找學(xué)號變量x;//定義姓名數(shù)組name[][N],待查找姓名變量y;//定義4科5個成績等級數(shù)組count[4][5];//定義登錄次數(shù)變量icheck;//定義被查找目標(biāo)在數(shù)組中的下標(biāo)變量posprintf("\nWelcometoUseTheStudent'sGradeManagementSystem!\n");while(icheck<3){if(用戶名與密碼不正確)//登錄次數(shù)增1else}

break;if(icheck==3){printf("\nLogginginthreetimesinarowwasunsuccessful,exit!");exit(0);}while(1)

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論