版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
本文格式為Word版,下載可任意編輯——C語言蘇小紅第五版十三章試驗題答案
C語言蘇小紅第五版十三章試驗題答案
#includestdio.h
#includestring.h
#includestdlib.h
#defineN30
#defineMAX_LEN10
#defineM3
typedefstructstudent
{
longstudentID;
charstudentName[10];
intscore[3];
}STUDENT;
voidInputScore(STUDENTstu[],intn);
voidSumforCorse(STUDENTstu[],intn,floatsumcorse[],floatavercorse[]);
voidSumforStudent(STUDENTstu[],intn,floatsumstudent[],floataverstudent[]);
voidDateScore(STUDENTstu[],intn,int(*compare)(inta,intb));
voidDateNum(STUDENTstu[],intn);
voidDateName(STUDENTstu[],intn);
intLinSearch(STUDENTstu[],longx,intn);
intLinSearchname(STUDENTstu[],charname[],intn);
voidRateScore(STUDENTstu[],intn);
voidPrintfScoreNum(STUDENTstu[],intn,floatsumcorse[],floatavercorse[]);
voidPrintf(STUDENTstu[],intn);
voidSwapnum(long*a,long*b);
voidSwapsum(int*a,int*b);
voidSwapscore(int*a,int*b);
intAscending(inta,intb);
intDescending(inta,intb);
voidWritetoFile(STUDENTstu[],intn);
intReadfromFILE(STUDENTstu[]);
main()
{intn,m,pos=0,i;
longx=0;
floatavercorse[3]={0},averstudent[N]={0},sumcorse[3]={0},sumstudent[N]={0};
charname[MAX_LEN];
STUDENTstu[N];
printf(howmanystudent?);
scanf(%d,n);
InputScore(stu,n);
printf(計算每門課程的總分和平均分輸入1\n);
printf(計算每個學(xué)生的總分和平均分輸入2\n);
printf(按每個學(xué)生的總分由高到低輸入3\n);
printf(依照每個學(xué)生的總分由低到高輸入4\n);
printf(學(xué)號有小到大排出成績表輸入5\n);
printf(按姓名在字典中的排序輸入6\n);
printf(按學(xué)號查詢學(xué)生排名及各科考試成績比輸入7\n);
printf(按姓名查詢學(xué)生排名及各科考試成績比輸入8\n);
printf(按成績百分比輸入9\n);
printf(輸出每個學(xué)生的學(xué)號姓名各科考試成績總分平均分及每門課程的總分平均分輸入10\n);
printf(將學(xué)生信息寫入文件輸入11:\n);
printf(從文件中讀取學(xué)生信息輸入12:\n);
scanf(%d,m);
switch(m)
{
case1:
SumforCorse(stu,n,sumcorse,avercorse);
break;
case2:
SumforStudent(stu,n,sumstudent,averstudent);
break;
case3:
DateScore(stu,n,Descending);
Printf(stu,n);
break;
case4:
DateScore(stu,n,Ascending);
Printf(stu,n);
break;
case5:
DateNum(stu,n);
Printf(stu,n);
break;
case6:
DateName(stu,n);
Printf(stu,n);
break;
case7:
{intj;
DateScore(stu,n,Descending);
printf(inputthenumberyouwanttosearch:);
scanf(%ld,x);
pos=LinSearch(stu,x,n);
if(pos!=-1)
printf(MT\tEN\tPH\t:\n);
for(j=0;j3;j++)
{
printf(%d\t,stu[pos].score[j]);
}
printf(第%d名\n,pos+1);
break;
}
case8:
{intj;
DateScore(stu,n,Descending);
printf(inputthenameyouwanttosearch:\n);
scanf(%s,name);
pos=LinSearchname(stu,name,n);
if(pos!=-1)
printf(MT\tEN\tPH\t:\n);
for(j=0;j3;j++)
{printf(%d\t,stu[pos].score[j]);}
}
printf(第%d名\n,pos+1);
break;
C語言蘇小紅第五版十三章試驗題答案
case9:
RateScore(stu,n);
break;
case10:
PrintfScoreNum(stu,n,sumcorse,avercorse);
break;
case11:
WritetoFile(stu,n);
break;
case12:
i=ReadfromFILE(stu);
Printf(stu,i);
break;
}
}
voidInputScore(STUDENTstu[],intn)
{
inti,j,m=3;
for(i=0;in;i++)
{
printf(inputthe%dstudentIDnamescore(MTENPH):,i+1);
scanf(%ld,stu[i].studentID);
scanf(%s,stu[i].studentName);
for(j=0;jm;j++)
{
scanf(%d,stu[i].score[j]);
}
}
}
voidSumforCorse(STUDENTstu[],intn,floatsumcorse[],floatavercorse[])
{
inti,j;
for(j=0;j3;j++)
{
for(i=0;in;i++)
{
sumcorse[j]=sumcorse[j]+stu[i].score[j];
}
avercorse[j]=sumcorse[j]/n;
switch(j)
{
case0:
printf(theMTtotleMT:%f\n,sumcorse[j]);
printf(theMTaverMT:%f\n,avercorse[j]);
break;
case1:
printf(theENtotleEN:%f\n,sumcorse[j]);
printf(theENaverEN:%f\n,avercorse[j]);
break;
case2:
printf(thePHtotlePH:%f\n,sumcorse[j]);
printf(thePHaverPH:%f\n,avercorse[j]);
break;
}
}
}
voidSumforStudent(STUDENTstu[],intn,floatsumstudent[],floataverstudent[])
{
inti,j;
for(i=0;in;i++)
{
for(j=0;j3;j++)
{
sumstudent[i]=sumstudent[i]+stu[i].score[j];
}
averstudent[i]=sumstudent[i]/3;
printf(第%d個thetotlescoreandaverageis%f%f\n,i+1,sumstudent[i],averstudent[i]);
}
}
voidDateScore(STUDENTstu[],intn,int(*compare)(inta,intb))
{inti,j,k,m,t,sumstudent[N];
chartemp[MAX_LEN];
for(i=0;in;i++)
{
for(j=0;j3;j++)
{
sumstudent[i]=sumstudent[i]+stu[i].score[j];
}
}
for(t=0;tn-1;t++)
{
k=t;
for(m=t+1;mn;m++)
{
if((*compare)(sumstudent[k],sumstudent[m]))
{
k=m;
}
if(k!=t)
{
Swapsum(sumstudent[t],sumstudent[k]);
Swapnum(stu[t].studentID,stu[k].studentID);
Swapscore(stu[t].score,stu[k].score);
strcpy(temp,stu[t].studentName);
strcpy(stu[t].studentName,stu[k].studentName);
strcpy(stu[k].studentName,temp);
}
}
}
}
voidSwapsum(int*a,int*b)
{inttemp;
temp=*a;
*a=*b;
*b=temp;
}
voidSwapnum(long*a,long*b)
{
longtemp;
temp=*a;
*a=*b;
*b=temp;
}
voidSwapscore(int*a,int*b)
{
inttemp[M],i;
for(i=0;i3;i++)
{temp[i]=a[i];
a[i]=b[i];
b[i]=temp[i];
}
}
intAscending(inta,intb)
{
returnab;
}
intDescending(inta,intb)
{
returnab;
}
voidDateNum(STUDENTstu[],intn)
{
inti,j,k;
chartemp[MAX_LEN];
for(i=0;in-1;i++)
{
k=i;
for(j=i+1;jn;j++)
{
if(stu[j].studentIDstu[k].studentID)
{k=j;
}
if(k!=i)
{
Swapnum(stu[i].studentID,stu[k].studentID);
Swapscore(stu[k].score,stu[i].score);
strcpy(temp,stu[i].studentName);
strcpy(stu[i].studentName,stu[k].studentName);
strcpy(stu[k].studentName,temp);
}
}
}
}
voidDateName(STUDENTstu[],intn)
{
inti,j,k;
chartemp[MAX_L
EN];
for(i=0;in;i++)
{
k=i;
for(j=i+1;jn;j++)
{if(strcmp(stu[k].studentName,stu[j].studentName)0)
{
Swapnum(stu[i].stude
C語言蘇小紅第五版十三章試驗題答案
ntID,stu[k].studentID);
Swapscore(stu[i].score,stu[k].score);
strcpy(temp,stu[i].studentName);
strcpy(stu[i].studentName,stu[k].studentName);
strcpy(stu[k].studentName,temp);
}
}
}
}
intLinSearch(STUDENTstu[],longx,intn)
{
inti;
for(i=0;in;i++)
{
if(stu[i].studentID==x)
returni;
}
return-1;
}
intLinSearchname(STUDENTstu[],charname[],intn)
{
inti;
for(i=0;in;i++)
{
if(strcmp(name,stu[i].studentName)==0)
returni;
}
return-1;
}
voidRateScore(STUDENTstu[],intn)
{
inti,a,b,c,d,e,j;
staticfloatrate1,rate2,rate3,rate4,rate5;
for(j=0;j3;j++)
{
a=0;b=0;c=0;d=0;e=0;
for(i=0;in;i++)
{if(stu[i].score[j]=90stu[i].score[j]=100)
{a++;
}
if(stu[i].score[j]=80stu[i].score[j]90)
{b++;
}
if(stu[i].score[j]=70stu[i].score[j]80)
{c++;
}
if(stu[i].score[j]=60stu[i].score[j]70)
{d++;
}
if(stu[i].score[j]=0stu[i].score[j]60)
{e++;
}
rate1=(float)a/n;
rate2=(float)b/n;
rate3=(float)c/n;
rate4=(float)d/n;
rate5=(float)e/n;
}
switch(j)
{
case0:
printf(MTis:\n);
printf(優(yōu)秀:%d所占百分比:%f\n,a,rate1);
printf(良好:%d所占百分比:%f\n,b,rate2);
printf(中等:%d所占百分比:%f\n,c,rate3);
printf(及格:%d所占百分比:%f\n,d,rate4);
printf(不及格:%d所占百分比:%f\n,e,rate5);
break;
case1:
printf(ENis:\n);
printf(優(yōu)秀:%d所占百分比:%f\n,a,rate1);
printf(良好:%d所占百分比:%f\n,b,rate2);
printf(中等:%d所占百分比:%f\n,c,rate3);
printf(及格:%d所占百分比:%f\n,d,rate4);
printf(不及格:%d所占百分比:%f\n,e,rate5);
break;
case2:
printf(PHis:\n);
printf(優(yōu)秀:%d所占百分比:%f\n,a,rate1);
printf(良好:%d所占百分比:%f\n,b,rate2);
printf(中等:%d所占百分比:%f\n,c,rate3);
printf(及格:%d所占百分比:%f\n,d,rate4);
printf(不及格:%d所占百分比:%f\n,e,rate5);
break;
}
}
}
voidPrintfScoreNum(STUDENTstu[],intn,floatsumcorse[],floatavercorse[])
{
inti,j,k;
for(i=0;in;i++)
{
printf(%ld,stu[i].studentID);
puts(stu[i].studentName);
printf(thescoreMT\tEN\tPH\t\n:);
for(j=0;j3;j++)
{
printf(%d\t,stu[i].score[j]);
}
printf(\n);
}
for(j=0;j3;j++)
{
for(i=0;in;i++)
{
sumcorse[j]=sumcorse[j]+stu[i].score[j];
}
avercorse[j]=sumcorse[j]/n;
}
for(k=0;k3;k++)
{
printf(thesumandaveris%f%f\n,sumcorse[k],avercorse[k]);
}
}
voidPrintf(STUDENTstu[],intn)
{
inti,j;
for(i=0;in;i++)
{
printf(%ld\n,stu[i].s
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024話務(wù)員個人考核總結(jié)(32篇)
- 浙江省溫州市(2024年-2025年小學(xué)六年級語文)統(tǒng)編版期中考試((上下)學(xué)期)試卷及答案
- 《網(wǎng)絡(luò)銀行安全現(xiàn)狀》課件
- 首發(fā)經(jīng)濟專題講座課件
- 2024教育咨詢服務(wù)的合同范本
- 2024年項目融資合同融資額度與還款方式
- 2024年石料供應(yīng)協(xié)議詳盡版下載專用版
- 2024年版電力工程物資供應(yīng)與租賃合同
- 2024年版跨國勞務(wù)合作代理合同書樣本一
- 2024景區(qū)旅游信息咨詢服務(wù)合同
- 2024年華電江蘇能源有限公司招聘筆試參考題庫含答案解析
- 遠(yuǎn)程銀行行業(yè)背景分析
- 如何提高孩子的注意力和專注力
- 2022-2023學(xué)年海南省??谑兄攸c中學(xué)八年級(上)期末物理試卷(含解析)
- 膽石癥教案完
- 護士個人優(yōu)點和缺點(六篇)
- 教師管理培訓(xùn)系統(tǒng)的設(shè)計與開發(fā)
- 2021年新高考語文Ⅰ卷真題現(xiàn)代文閱讀《石門陣》解析
- 老化測試記錄表
- 金屬齒形墊片安全操作規(guī)定
- (完整版)ABAQUS有限元分析實例詳解
評論
0/150
提交評論