题目描述
期末考试结束,班主任拿到了本班学生的成绩汇总表,由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 j,k,m,n; scanf("%d%d",&m,&n); double a[m][n],sum = 0; for(j = 0; j < m; j++) { for(k = 0; k < n; k++) { scanf("%lf",&a[j][k]); } } for(k = 0; k < n; k++) { for(j = 0; j < m; j++) { sum+=a[j][k]; } sum /= 1.0*m; if(j == m-1) printf("%.2f",sum); else printf("%.2f ",sum); sum = 0; } return 0; }
千万千万要注意:::之前没定义过double数组的同学,是可以定义double数组的
比如说这道题目 你难道就不能考99.9吗????
所以int数组绝对是错误的