注册 登录
编程论坛 C语言论坛

求对角线元素之和

何冠希 发布于 2019-12-07 18:57, 1970 次点击
Description
给定一个n*n的矩阵,求其对角线的元素之和。
Input
首先输入一个n,n为小于10的奇数。
接下来输入一个n行n列的矩阵。
Output
输出一个整数,表示矩阵对角线元素之和。
Sample Input
Raw
3
1 2 3
4 5 6
7 8 9
Sample Output
Raw
25
Hint
温馨提示:矩阵中心的元素不要加两次哦!
2 回复
#2
rjsp2019-12-07 19:13
int sum = a[n/2][n/2];
for( size_t i=0; i!=n; ++i )
    sum += a[i][i] + a[i][n-1-i];

手机答题,没法验证,仅供参考
#3
自学的数学2019-12-07 21:07
程序代码:
#include <stdio.h>
main()
{
int N,i,j;
int a[10][10],sum=0;
printf("input 矩阵的行数N:\n");
scanf("%d",&N);
printf("请输入一个N*N的整数矩阵a[N][N](N<=10)\n");
for(i=0;i<N;i++)
  for(j=0;j<N;j++)
    {
      scanf("%d",&a[i][j]);
      if(i==j||i+j==2)
        sum=sum+a[i][j];
    }
printf("所输矩阵的两对角线上的元素之和\n %d\n",sum);
}
1