vs2019多维数组与函数问题。
double average2d(int n, int m, double(*a)[])
{
double sum = 0.0;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
sum +=a[i][j];
}
vs2019多维数组与函数问题。
double average2d(int n, int m, double(*a)[])
{
double sum = 0.0;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
sum +=a[i][j];
}
这段代码的问题在于函数缺少返回语句,应该将求平均数的结果返回。同时,指针参数 a 的类型声明也需要进行修改。
以下是修改后的代码:
double average2d(int n, int m, double a[][m])
{
double sum = 0.0;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
sum += a[i][j];
return sum / (n * m);
}
在函数定义中,我们将指针参数 a 的类型声明修改为 double a[][m],这样可以指定它是一个二维数组。在计算平均数时,我们需要将二维数组中的所有元素求和,并将结果除以元素总数。最后,我们将计算出的平均值作为函数的返回值。