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