根据数学定义可以知道,对于矩阵P,其第m行n列上的元素,是其转置矩阵的n行m列元素。
从此可以得出程序如下:
#define M 10#define N 5
//以10行5列为例,可以任意修改。
void convert(int a[M][N], int b[N][M])//求a的转置矩阵,结果存于b中。
{
int i,j
for(i = 0 i <M i ++)
for(j = 0 j < N j ++)
b[j][i] = a[i][j]//转置运算。
}
#include<iostream.h>void main()
{
int a[3][3],b[3][3]
int p=0
for(int i=0i<3i++)
{
for(int j=0j<3j++)
{
cin>>a[i][j]
b[j][i]=a[i][j]
}
}
cout<<"原矩阵为:"<<endl
for(int m=0m<3m++)
{
for(int n=0n<3n++)
{
cout<<a[m][n]<<" "
p++
if(p%3==0)
cout<<endl
}
}
cout<<endl
cout<<"转置后的矩阵为:"<<endl
for(int c=0c<3c++)
{
for(int d=0d<3d++)
{
cout<<b[c][d]<<" "
p++
if(p%3==0)
cout<<endl
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)