//编写程序,把3*3阶矩阵A加上矩阵A的转置,计算结果存放在矩阵B中并输出。
//
//输入说明:输入矩阵A中的元素,数组元素用空格分隔,数组每行用换行分隔
//
//输出说明:输出矩阵B,元素之间用空格分隔,数组每行用换行分隔
//
//输入示例:1 2 3
// 4 5 6
// 7 8 9
//
//输出示例: 2 6 10
// 6 10 14
// 10 14 18
#include<stdio.h>//转置的意思是行列互换所以有idea了。 a[i][j]=a[j][i]
# define n 3
int b[n][n];
int main()
{
void convert(int b[][3]);
void sum(int a[][3]);
int i,j;
int a[n][n];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
b[i][j]=a[i][j];
}
convert(b);
sum(a);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
printf("%d ",b[i][j]);
}
printf("\n");
}
}
void convert(int b[][3])
{
int i,j,t;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)//这样看来i=j的时候不用换所以
{
t=b[i][j];
b[i][j]=b[j][i];
b[j][i]=t;
}
}
void sum(int a[][3])
{
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
b[i][j]=b[i][j]+a[i][j];
}
}