1 每个学生的平均分;2 每门课的平均分;3 找出最高的分数所对应的学生和科成绩。
(理论上来说自己的做的这个程序是成功的~毕竟还是找不出每个学生那5门中的最高成绩所对应的
那一科,比如A的5门成绩为1 2 3 4 5 那就应该是第A个学生的第5科成绩为5。
为了简便,以下为3个学生的5门成绩……代码~
float max(float a[][5]) /*找出最高分数所对应的学生和课程*/
{int i,j;
int x=0,y=0;
float max=a[0][0];
for(i=0;i<3;i++)
{for(j=0;j<5;j++)
if (max<a[i][j])
max=a[i][j];
y=j;
x=i;
printf("di %d ge xuesheng de di %d men chengji wei:%f\\n",x+1,y,max);
}
}
float classes ( float a[][5],int j) /*3个学生的平均分*/
{int i;
float c=0,d=0;
for(i=0;i<3;i++)
c=a[i][j]+c;
d=c/3;
return(d);
}
float student(float a[][5],int i) /*5门课的5个平均成绩*/
{int j;
float c=0,d=0;
for(j=0;j<5;j++)
c=a[i][j]+c;
d=c/5;
return(d);
}
main()
{int i,j;
float a[3][5],b[3],c[5];
printf("shuru 10ge xuesheng de 5men chengji :\\n");
for(i=0;i<3;i++)
{for(j=0;j<5;j++)
scanf("%f",&a[i][j]);
}
for(i=0;i<3;b[i++]=student(a,i));
for(j=0;j<5;c[j++]=classes(a,j));
printf("3 ge xuesheng de pingjun fen wei :\\n");
for(i=0;i<3;i++)
{printf("%f",b[i]);
printf("\\n");
}
printf("5 men ke de pingjun fen wei :\\n");
for(j=0;j<5;j++)
{printf("%f" ,c[j]);
printf("\\n");
}
max(a);
getch();
}