ZZULIOJ题解
1128: 课程平均分
题目描述
期末考试结束,班主任拿到了本班学生的成绩汇总表,由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()
{
int i,j,m,n;
double y,sum=0,a[1000][10];//二维数组a,以及总和sum和结果y
scanf("%d%d",&m,&n);//输入m和n
//输入m行n列成绩
for(i=0;i<m;i++)
{
for(j=0;j<n;j++){
scanf("%lf",&a[i][j]);
}
}
//输出部分
for(j=0;j<n;j++){
sum=0;//重置sum的值
for(i=0;i<m;i++){
sum=sum+a[i][j];
}
y=sum/m;//计算平均成绩
//进行按格式输出
if(j!=n-1)
printf("%.2f ",y);
else
printf("%.2f",y);
}
return 0;
}