矩阵,可以用二维数组表示出来
用二维数组的下标来显示矩阵如下:
1 2 3
4 5 6
7 8 9
原矩阵
1 4 7
2 5 8
3 6 9
置换矩阵
[0][0] [0][1] [0][2]
[1][0] [1][1] [1][2]
[2][0] [2][1] [2][2]
[0][0] [0][1] [0][2]
[1][0]
[2][0]
[1][1] [1][2]
[2][1] [2][2]
行与列的对换,每次都需要在不同的起点开始,不然双双对换,等于没换。
以3×3的矩阵来说,需要交换2次,第一次交换,可以从【0】【0】开始,第二次交换则从【1】【1】开始。
int a[3][3] = { 1,2,3,4,5,6,7,8,9 }; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%3d", a[i][j]); } printf("\n"); } printf("原矩阵\n"); 这是打印原矩阵
for (int i = 0; i < 3; i++) { for (int j = i; j < 3; j++) { int t = a[j][i]; a[j][i] = a[i][j]; a[i][j] = t; } } 这是转换代码
最后再打印一遍就ok了
标签:int,交换,置换,矩阵,++,printf From: https://www.cnblogs.com/tkmi/p/18114079