龙空技术网

C语言-矩阵转置

肌肉诗男 278

前言:

此时姐妹们对“c语言两矩阵”都比较注意,我们都需要了解一些“c语言两矩阵”的相关内容。那么小编同时在网摘上网罗了一些关于“c语言两矩阵””的相关文章,希望朋友们能喜欢,我们一起来学习一下吧!

①目标

将一个二维数组表示的矩阵转置

②命令行

#include<stdio.h>

#include< stdlib.h>

~

③定义函数

void fun(int array[3][3])

{int i,j,t;

for(i=0;i<3;i++)

for(j=i+1;j<3;j++)

/*注意:只遍历了矩阵的右上半部分。

如果for(j=0;j<3;j++,表示遍历矩阵全部元素,右上与左下交换,左下又与右上交换,导致重复转置,矩阵没有变化。*/

{t=array[i][j];

array[i][j]=array[j][i];

array[j][i]=t;}

/*交换语句,矩阵右上半部分,与对应左下半部分,元素交换,完成转置*/

}

~

④主函数(调用)

void main()

{int i,j;

int array[3][3]={{1,2,3},{4,5,6},{7,8,9}};

for(i=0;i<3;i++)

{for(j=0;j<3;j++)

/*输出原矩阵,遍历全部*/

printf("%7d",array[i][j]);

printf("\n");}

fun(array);

/*利用fun函数完成转置*/

printf("converted array:\n");

for(i=0;i<3;i++)

{for(j=0;j<3;j++)

printf("%7d",array[i][j]);

printf("\n");}

}

标签: #c语言两矩阵