第1个回答 2015-01-02
#include <iostream>
using namespace std;
const int N = 3;
void reverse(int arr[N][N])
{
int temp[N][N];
for (int i = 0; i < N; ++i)
for (int j = 0; j < N; ++j)
temp[i][j] = arr[j][i];
for (int i = 0; i < N; ++i)
for (int j = 0; j < N; ++j)
arr[i][j] = temp[i][j];
}
void output(int arr[N][N])
{
for (int i = 0; i < N; ++i)
{
for (int j = 0; j < N; ++j)
cout << arr[i][j] << " ";
cout << endl;
}
}
int main()
{
int num[N][N];
for (int i = 0; i < N; ++i)
for (int j = 0; j < N; ++j)
cin >> num[i][j];
output(num);
reverse(num);
output(num);
return 0;
}本回答被网友采纳
第2个回答 2015-01-02
#include<stdio.h>
int main()
{
int a[3][3],i,j,t;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("原始矩阵为:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
for(i=0;i<3;i++)
for(j=0;j<i;j++)
{
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
printf("转置后的矩阵为:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}