Problem H: 矩阵对角线求和

Problem H: 矩阵对角线求和

Description

输入一个n×n的整数矩阵,分别计算两个对角线的和。

Input

输入矩阵的阶数n(n≤10),另起一行后输入一个n×n的整数矩阵,每列数据用空格隔开,每行数据用回车分隔。

Output

输出主对角线和副对角线的和。

Sample Input

3
1 2 3
3 2 1
9 7 8

Sample Output

11 14

#include<stdio.h>
int main()
{
    int n,m,i,j,k,a[30][30],b[30];

    while(scanf("%d",&n)!=EOF)
    {
          int sum1=0,sum2=0;
        for(i=0;i<n;i++){
            for(j=0;j<n;j++){
                  scanf("%d",&a[i][j]);
            }
        }
        for(i=0;i<n;i++)
        {
            for(j=i;j<i+1;j++)
            {
                sum1+=a[i][j];
            }


        }
                for(i=0;i<n;i++){
                    for(j=n-1-i;j>n-2-i;j--)
                        sum2+=a[i][j];
                }
                  printf("%d ",sum1);
                  printf("%d\n",sum2);


    }
    return 0;
}

另一种写法

#include<stdio.h>
int main()
{
    int n,a[10][10];
    scanf("%d",&n);
    int i,j,sum1=0,sum2=0;
    for(i=0;i<n;i++)
    for(j=0;j<n;j++)
    scanf("%d",&a[i][j]);
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            if(i==j)
            sum1+=a[i][j];
            if(i+j==n-1)
            sum2+=a[i][j];
        }
    }
    printf("%d %d\n",sum1,sum2);
    return 0;
}

总结

1、思考清楚行与列的数学关系,以及变量之间的联系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值