weixin_53372153
2021-07-04 15:56
采纳率: 95.2%
浏览 91

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

二维数组:求周边元素之和
通过函数求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

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 暗夜无风 2021-07-04 21:22
    已采纳
    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

    已采纳该答案
    2 打赏 评论

相关推荐 更多相似问题