题目描述设计一个函数,该函数用于求一个任意大小的二维double型数组的平均值。该函数的名字叫做matrixAvg
请使用下面的main函数测试你设计的函数
int main(){
int M,N;
scanf("%d%d",&M,&N);
double aver,a[M][N];
int i,j;
for(i=0;i<M;i++)
for(j=0;j<N;j++)
scanf("%lf",&a[i][j]);
aver=matrixAvg(M,N,a);
printf("%.2f\n",aver);
return 0;
}
输入描述第一行输入整数M和N
从第二行开始,输入M行,每行输入N个double型的数
输出描述输出数组的平均值
提示无
样例输入复制样例输入数据
3 4
1 2 3 4
5 6 7 8
9 10 11 12
样例输出6.50
允许最长运行时间3000ms
允许使用最大内存1024KB
double matrixAvg(int m, int n, double** a)
{
int i,j;
double sum = 0.0;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
sum += a[i][j];
sum = sum / (m * n);
return sum;
}
int main(){
int M,N;
int i,j;
scanf("%d%d",&M,&N);
double aver = 0.0;
double **a = new double* [M];
for(i=0;i<M;i++)
a[i] = new double[N];
for(i=0;i<M;i++)
for(j=0;j<N;j++)
scanf("%lf",&a[i][j]);
aver=matrixAvg(M,N,a);
printf("%.2f\n",aver);
for(i=0;i<M;i++)
delete [] a[i];
delete [] (a);
return 0;
}
main函数中a的定义有点问题,改成了动态二维数组