题目描述
求n×n的矩阵的正对角线元素的和,正对角线是指从矩阵左上角到右下角的对角线。
输入
第一行输入T表示有T个测试实例
第二行输入n表示矩阵维度
第三行起,输入n行数据,每行n个数据,设定矩阵数据均为正整数
以此类推,输入下一个矩阵
输出
输出总和
IO模式
本题IO模式为标准输入/输出(Standard IO),你需要从标准输入流中读入数据,并将答案输出至标准输出流中。

代码如下:
#include <stdio.h>
int main()
{
int T,n,sum;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
int arr[n][n];
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
scanf("%d",&arr[i][j]);
sum=0;
for(int i=0;i<n;i++)
sum+=arr[i][i];
printf("%d\n",sum);
}
return 0;
}
这个题其实比较简单,需要搞明白的更多是线性代数-矩阵的知识(也不多
二维数组和矩阵的结构相同,都是(先给这个抽象图致歉一下(有行间距凑合看吧
——————————————→
| (1,1)(1,2)(1,3)……(1,n)
| (2,1)
| (3,1)
| ……
↓ (n,1)…………………………(n,n)
差不多就这么个形状(假设行数=列数)
所以这样就能知道输入之后应该将哪些元素加和了
要分享的大概就这些,如果有更好的方法欢迎交流!
如果有帮到你请点个赞吧!也可以关注我,以后会分享更多,谢谢!
(专栏里面还有更多题哦)

被折叠的 条评论
为什么被折叠?



