1125: 【C语言程序设计】[6.5.5]矩阵转换 [水题]
时间限制: 1 Sec 内存限制: 128 MB提交: 150 解决: 99
题目描述
对N×N的矩阵,以主对角线为对称线,将对称元素相加并将结果存放在下三角元素中,右上三角元素置0。
输入
第一行为一个整数n(2<=n<=100)。
下面N行给出一个N×N的矩阵。
输出
输出转换后的矩阵。
样例输入
4
21 12 13 24
25 16 47 38
29 11 32 54
42 21 33 10
样例输出
21 0 0 0 37 16 0 0 42 58 32 0 66 59 87 10 解析: 二维数组的输入输出,注意满足题意的条件(矩阵对角线上的数字不变) 程序如下:#include<cstdio> int main() { int n,a[103][103],i,j; scanf("%d",&n); 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) { a[i][j]+=a[j][i]; a[j][i]=0; } } for(i=0;i<n;i++) { for(j=0;j<n;j++) printf("%d%c",a[i][j],j==n-1?'\n':' '); } return 0; }