老师平时布置的希冀系统上的作业答案,仅供参考!
【问题描述】
对于一个N阶矩阵,分别按行、按列、按两对角线计算元素之和。
【输入形式】
先输入矩阵的阶数(不超过50),然后输入一个n阶矩阵。
【输出形式】
第一行输出按行计算出的元素之和,以一个空格分隔;
第二行输出按列计算出的元素之和,以一个空格分隔;
第三行、第四行分别输出左、右对角线计算出的元素之和。
【输入样例】
3
1 2 3
4 5 6
7 8 9
【输出样例】
6 15 24 (行之和)
12 15 18 (列之和)
15 (左对角线和)
15 (右对角线和)
【样例说明】
输入一个3阶矩阵,分别计算输出它的行,列和对角线的和
【参考答案】
#include<stdio.h>
int main()
{
int k[5][5];
int a[5]={0,0,0,0,0},b[5]={0,0,0,0,0},c=0,d=0;
int i,j,n;
scanf("%d",&n);
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&k[i][j]);
for(i=0;i<n;i++)
for(j=0;j<n;j++)
a[i]=k[i][j]+a[i];
for(j=0;j<n;j++)
for(i=0;i<n;i++)
b[j]=k[i][j]+b[j];
for(i=0;i<n;i++)
c=k[i][i]+c;
for(i=0;i<n;i++)
d=k[i][n-i-1]+d;
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
for(i=0;i<n;i++)
printf("%d ",b[i]);
printf("\n");
printf("%d",c);
printf("\n");
printf("%d",d);
return 0;
}
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容