二维数组:求周边元素之和

二维数组:求周边元素之和
通过函数求M行N列的二维数组周边元素之和(即第0行、M-1行、0列、N-1列所在的元素)。注意每个元素不重复加。

函数接口定义:
int fun(int a[M][N]) ;
函数返回二维数组a周边(每个数不重复加)元素的和。

裁判测试程序样例:

#define M 5
#define N 4
#include "stdio.h"
int fun(int a[M][N]) ;
int main( )
{
int a[M][N] , i , j ;
int y;
for(i=0;i<M;i++)
for(j=0; j<N; j++)
scanf("%d", &a[i][j]) ;
y=fun(a) ;
printf("s=%d",y) ;
return 0 ;
}

/* 请在这里填写答案 */
输入样例:
1 2 3 4
3 4 5 6
5 6 7 8
8 9 0 1
1 2 3 5
输出样例:
s=52

int fun(int a[M][N])
{
    int sum = 0;
    int i;
    for (i = 0; i < M; i++)
    {
        sum += a[i][0] + a[i][N - 1];
    }
    for (i = 0; i < N; i++)
    {
        sum += a[0][i] + a[M - 1][i];
    }
    return sum - a[0][0] - a[M - 1][N - 1] - a[0][N - 1] - a[M - 1][0];
}

img