Ⅰ、用數組實現轉置矩陣:
①、//代碼摘下直接可以運行
//轉置矩陣
#include “stdio.h”
int main( )
{ int i,j,a[4][4],n=1,b[4][4];
for(i=0;i<3;i++)
for(j=0;j<4;j++)
a[i][j]=n++; //作用是自動加一來生成連續的矩陣;
for(i=0;i<3;i++) //此後的思想與做法與自己想的大致相同;
{for(j=0;j<4;j++)
printf("%3d",a[i][j]);
printf("\n");
}
printf("\n");
for(i=0;i<4;i++)
for(j=0;j<3;j++)
b[i][j]=a[j][i];
for(i=0;i<4;i++)
{ for(j=0;j<3;j++)
printf("%3d",b[i][j]);
printf("\n");
}
return 0;
}
②、結果展示:
例如:此程序的作用是輸入數組元素並將當前的數組元素按照現在的順序展示出來,然後通過數組元素的複製從而將數組元素倒置,形成數組矩陣倒置,其結果如下圖所示:
☺寄語:
Ⅰ、此程序在Visual C++6.0版本上運行的;
Ⅱ、如果我給的程序有問題,或在敘述方面有問題,或者看不懂我講解的意思,請及時指出或留言和我討論,謝謝各位大佬!!!
Ⅲ、
①、在數組的定義過程中,定義數組爲四行四列以備使用,其語句定義爲:a[4][4],b[4][4];
②、主要有四個for循環:第一個for循環是爲了自動生成矩陣(從1到12);
第二個for循環是爲了第一次輸出矩陣(a數組形成的矩陣);
第三個for循環是爲了將a數組的值賦給b數組,其語句爲b[i][j]=a[j][i];
第四個for循環是爲了第二次輸出矩陣(b數組形成的矩陣);
③、該程序主要的問題所在就是要重新定義並使用一個數組b以保證在第二次輸出的時候能輸出轉置矩陣;