C语言程序设计:输入五个学生的语数外成绩,使用自定义函数,求出每门...

C语言程序设计:输入五个学生的语数外成绩,使用自定义函数,求出每门课的最大成绩最小成绩,平均成绩并输出

#include<stdio.h>
void F(float score[][3])
{
float min[3],max[3],aver[3]={0};
int i,j;
for(i=0;i<3;i++)
{
min[i]=score[0][i];
max[i]=score[0][i];
for(j=0;j<5;j++)
{
if(score[j][i]>max[i])max[i]=score[j][i];
if(score[j][i]<min[i])min[i]=score[j][i];
aver[i]+=score[j][i];
}
aver[i]/=5;
}
printf("每门课程的最大成绩,最小成绩,平均分:\n");
for(i=0;i<3;i++)
printf("第%d门课程:%5.1f,%5.1f,%5.1f\n",i+1,max[i],min[i],aver[i]);
}
main()
{
float score[5][3];
int i,j;
printf("分别输入5名学生的语数外成绩:\n");
for(i=0;i<5;i++)
for(j=0;j<3;j++)
scanf("%f",&score[i][j]);
F(score);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-19
#include "stdio.h"
static float Chinese[5],Math[5],English[5];

void Function()
{
float max[3],min[3],avr[3];
int i ;
min[0] = Chinese[0];
max[0] = Chinese[0];
min[1] = Math[0];
max[1] = Math[0];
min[2] = English[0];
max[2] = English[0];
for( i = 0 ; i < 3 ; i ++)
{ avr[i] = 0; }
for( i = 0 ; i < 5 ; i ++)
{
if(Chinese[i] < min[0])
Chinese[i] = min[0];
if(Chinese[i] > max[0])
Chinese[i] = max[0];
avr[0] += Chinese[i];
if(Math[i] < min[1])
Math[i] = min[1];
if(Math[i] > max[1])
Math[i] = max[1];
avr[1] += Math[i];
if(English[i] < min[2])
English[i] = min[2];
if(English[i] > max[2])
English[i] = max[2];
avr[2] += English[i];
}

printf("---------------------------\n");
printf("| | 最大值 | 最小值 | 平均值 |\n");
printf("|语文| %4.2f | %4.2f | %4.2f |\n",max[0],min[0],avr[0]/5);
printf("|数学| %4.2f | %4.2f | %4.2f |\n",max[1],min[1],avr[1]/5);
printf("|英语| %4.2f | %4.2f | %4.2f |\n",max[2],min[2],avr[2]/5);
printf("---------------------------\n");

}
main()
{
int stu,sub;
for(stu = 1 ; stu <=5 ;stu ++)
{
printf("请输入学生%d语文成绩:",stu);
scanf("%f",&Chinese[stu-1]);
printf("请输入学生%d数学成绩:",stu);
scanf("%f",&Math[stu-1]);
printf("请输入学生%d英语成绩:",stu);
scanf("%f",&English[stu-1]);
}
Function();
return 0;
}
相似回答