weixin_53372153 2021-07-05 08:35 采纳率: 83.3%
浏览 1438
已采纳

二维数组:求方阵主、副对角线上元素之和

二维数组:求方阵主、副对角线上元素之和
二维数组:求5行5列矩阵的主、副对角线上元素之和。 注意:两条对角线相交的元素只加一次。

函数接口定义:
int fun(int a[M][M]) ;
函数返回主副对角线元素的累加和。

裁判测试程序样例:

#include <stdio.h>
#define M 5
int fun(int a[M][M]) ;

int main()
{
int a[M][M],i,j;
int y;
for(i=0;i<M;i++)
for(j=0; j<M; j++)
scanf("%d", &a[i][j]) ;
y=fun(a);
printf("sum=%d", y) ;
return 0;
}

/* 请在这里填写答案 */
输入样例:
1 3 5 7 19
2 4 6 1 10
1 2 3 4 15
2 5 6 2 18
3 3 8 8 12
输出样例:
sum=50

  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-07-05 10:00
    关注

    代码如下:

    
    int fun(int a[M][M])
    {
        int i=0,j=0;
        int sum = 0;
        for (i=0;i<M;i++)
        {
            for (j=0;j<M;j++)
            {
                if(i==j)
                    sum += a[i][j];  //主对角线
                else if (i+j ==M-1)
                {
                    sum += a[i][j];  //副对角线
                }
            }
        }
        return sum;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    悬赏问题

    • ¥15 请教如何为VS2022搭建 Debug|win32的openCV环境?
    • ¥15 关于#c++#的问题:c++如何使用websocketpp实现websocket接口调用,求示例代码和相关资料
    • ¥15 51单片机的外部中断,按下按键后不能切换到另一个模式
    • ¥15 java连接sqlserver有问题
    • ¥15 yolov8 如何调cfg参数
    • ¥15 这个四人抢答器代码哪儿有问题?仿真程序怎么写?
    • ¥15 burpsuite密码爆破
    • ¥15 关于#ubuntu#的问题,如何解决?(相关搜索:移动硬盘)
    • ¥15 scikit安装之后import不了
    • ¥15 Ros2编译一个使用opencv的c++节点的时候,报了这个错误,请问怎么解决啊