#include
"stdio.h"
#include
"mem.h"
#define isdebug 0
/*int iroworcol;*/
void readmatrix(
int *ipmatrixread,
int iroworcol4read)}}
void writematrix(
int *ipmatrixwrite,
int p_iroworcol)
printf(
"%c/n", '┐');
for (irow4write = 0; irow4write < p_iroworcol; irow4write ++)
printf(
"%c/n", '│');
}putch('└');
for (irow4write = 0; irow4write < (p_iroworcol + 1) * 3 -1; irow4write ++)
printf(
"%c/n", '┘');
#if isdebug == 1
getch();
#endif
}int computmatrix(
int *ipmatrixcomput,
int icolcomput)
else
irowtmp ++;}}
#if isdebug == 1
for (irow4comput = 0; irow4comput < icolcomput - 1; irow4comput ++)
}printf(
"]/n************/n");
writematrix(ipnewmatrix, icolcomput - 1);
#endif
iresult += *(ipmatrixcomput + currentrow * icolcomput) * computmatrix(ipnewmatrix, icolcomput - 1) * ((currentrow + 1) % 2 ? 1 : -1);
#if isdebug == 1
printf(
"result=%d/n", iresult);
getch();
#endif
free(ipnewmatrix);}}
}}return (iresult);
}void main(
void)
else
}printf(
"/n/n= %d/n", computmatrix(ipmatrix, iroworcol));
free(ipmatrix);
}else
}else
printf(
"/ncompute another matrix(y/n)?");
chsure = getche();
if (toupper(chsure) != 'y')}}
求行列式的值
肯定要用遞迴,肯定要用陣列 用乙個二維陣列來表示這個矩陣,但是引數傳遞的時候我們不能確定這個矩陣的行數列數,所以編譯器會報錯 所以定義乙個一維陣列來模擬這個行列式,而一維陣列作為引數傳遞給函式時又不用指定大小,符合我們的需要。同時我們定義乙個結構體來表示這個余子式 typedef struct yu...
程式設計 C 對角變換求行列式值
最近複習行列式知識的時候,發現如何求解數字行列式的值比較重要,寫了乙個通過基本行變換把行列式變換為上三角行列式,然後利用對角線求值 using system using system.collections.generic using system.linq using system.text us...
演算法 求行列式 C語言實現
興趣來了,編寫乙個求行列式的程式,關鍵要解決兩個問題 1 行列式列序號的全排列 2 行列式的符號 include include using namespace std define len 3 define count 3 2 1 the count of premutation for leng...