程式設計 C 對角變換求行列式值

2021-08-02 21:33:26 字數 1036 閱讀 8420

最近複習行列式知識的時候,發現如何求解數字行列式的值比較重要,寫了乙個通過基本行變換把行列式變換為上三角行列式,然後利用對角線求值:

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

,,,};

int n = 4;

double temp = 1;

show(date,n);

int k = 1;

for (int p = 0; p < n; p++)

}k++;

}console.writeline("***********************************");

show(date,n);

double sum = 1;

for(int i=0;ifor(int j=0;jconsole.writeline("the value of det is:" + sum);

}static void show(double [,]date,int n)

}}}/*

在vs2013中執行結果為:

1       1       3       1

1       2       4       8

1       3       3       27

1       4       -3      64

***********************************

1       1       3       1

0       1       1       7

0       0       -2      12

0       0       0       -12

the value of det is:24

請按任意鍵繼續. . .

*/

求行列式的值

肯定要用遞迴,肯定要用陣列 用乙個二維陣列來表示這個矩陣,但是引數傳遞的時候我們不能確定這個矩陣的行數列數,所以編譯器會報錯 所以定義乙個一維陣列來模擬這個行列式,而一維陣列作為引數傳遞給函式時又不用指定大小,符合我們的需要。同時我們定義乙個結構體來表示這個余子式 typedef struct yu...

用C語言程式設計遞迴求行列式的值

include stdio.h include mem.h define isdebug 0 int iroworcol void readmatrix int ipmatrixread,int iroworcol4read void writematrix int ipmatrixwrite,in...

計算行列式的值

include include define max 9 定義最大為9階行列式 int fun int n,int a max max 函式宣告 int main 定義行列式 scanf d n 讀入階數 while n 0 輸入為0時退出程式 printf d n fun n,a scanf d ...