猿问

c语言 程序题 数组题

初始化矩阵a【4】【4】,分别计算两天对角线元素之和。要求输出原始矩阵及两条对角线的元素和。
何家姑娘
浏览 1192回答 3
3回答

望远

#include<stdio.h> void main() { int arr[100][100]; int n,i,j; int sum1=0,sum2=0; printf("请输入一个正整数:"); scanf("%d",&n); printf("请输入一个%d*%d的矩阵:\n",n,n); for(i=0;i<n;i++) { for(j=0;j<n;j++) { scanf("%d",&arr[i][j]); } } printf("原矩阵为:\n"); for(i=0;i<n;i++) { for(j=0;j<n;j++) { printf("%5d",arr[i][j]); if(i==j) { sum1+=arr[i][j];//主对角线 } if(i+j==n-1) { sum2+=arr[i][j];//副对角线 } } printf("\n"); } printf("主对角线之和:%d副对角线之和%d\n",sum1,sum2); }

慕瓜4807886

对角线的元素的下标都是有规律的啊,00,11,22,33,04,13,22,40,如果你不想这样,对角线对于第一行来说就是第一个和最后一个元素,第二行就是第二个和倒数第二个,以此类推,然后你得到在相加就好了
随时随地看视频慕课网APP
我要回答