非主对角线元素的调换,
只需要将蓝色虚线左边的元素进行调换
#include<stdio.h>
#define N 5 //需要转置N阶矩阵
int main(){
void M_t(int a[][N]); //函数声明
int i,j;
int a[N][N];
/*矩阵输入*/
printf("请输入一个%d×%d的矩阵:\n",N,N);
for(i=0;i<N;i++)
for(j=0;j<N;j++)
scanf("%d",&a[i][j]);
M_t(a); //转置函数调用
puts("转置后为:");
/*矩阵输出*/
for(i=0;i<N;i++){
for(j=0;j<N;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}
/*矩阵转置函数*/
void M_t(int a[][N]){
int i,j,t;
for(i=0;i<N;i++)
for(j=0;j<=i;j++){
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
}
版权声明:本文为weixin_64811333原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。