求N阶行列式的值
改变N的值可以求N阶行列式的值
#define N 4
#include
#include
void main()
{
int i,j,m,n,s,t,k=1;
double a[N][N],f=1,c,x,sn;
for (i=0;i for (j=0;j scanf ("%lf",&a[i][j]); for (i=0,j=0;i { if (a[i][j]==0) { for (m=i;a[m][j]==0;m++); if (m==N) { sn=0; printf("detA=%lf ",sn); exit(0); } else for (n=j;n { c=a[i][n]; a[i][n]=a[m][n]; a[m][n]=c; } k*=(-1); } for (s=N-1;s>i;s--) { x=a[s][j]; for (t=j;t a[s][t]-=a[i][t]*(x/a[i][j]); } } for (i=0;i f*=a[i][i]; sn=k*f; printf ("detA=%lf ",sn); }<