天天看点

3X3矩阵转置----调用函数----C语言进阶之路

#include<stdio.h>

int main()

{

int i,j;

void Z_Z(int x[3][3],int y[3][3]);

int b[3][3];

int a[3][3];

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

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

scanf("%d",&b[i][j]);

}

Z_Z(a,b);

//Z_Z表示转置的意思

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

{

for(j=0;j<=2;j++)

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

   printf("\n");

}

return 0;

}

void Z_Z(int x[3][3],int y[3][3])

{

int i,j;

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

for(j=0;j<=2;j++)

{

x[j][i]=y[i][j];

}

}

函数作用就是将函数中后边参数(矩阵)的行和列的值换为前边参数(矩阵)的列和行。

算法核心是标红部分,先定义了2个矩阵,然后用for循环以类似赋值的方式,将函数中后边一个参数矩阵的行和列的值赋值给前一个矩阵的列和行的值;

在调用之前,主函数中需要输入一个矩阵,我将输入的这个矩阵放到函数后边的那个参数中去。

继续阅读