编制子函数实现数组元素的平均值计算,要求参数类型为二维数组类型,并在主函数中调用子函数实现平均值的输出。
m,n表示二维数组的行数和列数,输入时先输入两个数,表示二维数组的行和列,然后再输入m*n个数组元素
#include<stdio.h>
float fun(float a[][1000],int m,int n)
{
float sum=0;
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
sum=sum+a[i][j];
return sum/(m*n);
}
int main()
{
float a[100][1000];
int m,n;
scanf("%d%d",&m,&n);
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
scanf("%f",&a[i][j]);
printf("average=%f",fun(a,m,n));
return 0;
}
private void button1_Click(object sender, EventArgs e)
{
float[,] arr = new float[2,3]{{1,1,1},{2,2,2}};
float n = GetAverage(arr);
MessageBox.Show(n.ToString());
}
private float GetAverage(float[,] arg)
{
float iSum = 0;
int row = arg.GetLength(0) ;
int col = arg.GetLength(1);
for (int i = 0; i < row; i++)
{
for (int k = 0; k < col; k++)
{
iSum += arg[i,k];
}
}
return iSum/arg.Length ;
}