【C语言】N 阶矩阵的转置

  • Post author:
  • Post category:其他


非主对角线元素的调换,

只需要将蓝色虚线左边的元素进行调换

#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 版权协议,转载请附上原文出处链接和本声明。