题目描述
期末考试结束,班主任拿到了本班学生的成绩汇总表,由m行n列组成(本班共有m名学生,本学期有n门课程),每行是一个同学的n门课程成绩,请编写程序,计算并输出每门课的平均分,结果保留2位小数。
输入
第一行是两个整数m和n,表示本班的人数和本学期课程数目,0<m<=1000,0<n<=10。
接下来是成绩单,有m行,每行n个实数。
输出
输出一行,有n个实数,保留两位小数,表示每门课的平均分,用空格隔开。
样例输入 Copy
5 4 80 65 70 95 99 38 59 90 30 78 81 85 90 43 13 80 65 87 79 80
样例输出 Copy
72.80 62.20 60.40 86.00
#include<stdio.h>
int main()
{
double arr[1000][10];
double average[10]={0};
int m,n,i,j;
scanf("%d%d",&m,&n);
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
scanf("%lf",&arr[i][j]);//在scanf中double的格式是%lf
}
}
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
average[i]+=arr[j][i];
}
}
for(i=0;i<n;i++)
{
printf("%.2f ",average[i]/m);//高精度与低精度运算时精度向高精度转化
}
}