定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为:
0 1 2 7 9
1 9 7 4 5
2 3 8 3 1
4 5 6 8 2
5 9 1 4 1
则返回主程序后s的值应为3.375.
double fun(int w[ ][N])
{
int i,j,k=0;
double sun=0.0;
for(i=0;i<N;i++)
for(j=0;j<N;j++)
if(i==0||i=N-1||j==0||j=N-1) /*只要下标中有一个为0或N-1,则它一定是周边元素*/
{sun+=w[i][j]; /*将周边元素求和*/
k++;
}
return sum/k; /*求周边元素的平均值*/
}
思路:本题要求计算二维数组周边元素的平均值,for循环语句控制循环过程,if条件语句根据数组元素的下标判断该元素是否为二维数组的周边元素。
本体采用注意判断的方式,周边元素的规律为下标中有一个是0或N-1,所以只要下标中有一个为0或N-1,那么它一定是周边元素。计算周边元素个数的方式是当给sum累加一个值时,k也加1。