當前位置:首頁 » 編程語言 » 行列式的乘法c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

行列式的乘法c語言

發布時間: 2023-07-20 10:12:35

① 二階矩陣與三階矩陣相乘的c語言

方法1:
把兩個行列式,都分別求出來,然後相乘
方法2:
把兩個行列式相應的矩陣,相乘,得到一個新的3階矩陣(元素aij,是第1個矩陣的i行,與第2個矩陣的j列元素,分別相乘之後,求和)
然後求這個新矩陣的行列式,即可

② 用C語言寫行列式運算程序

#include <stdio.h>
#include <stdlib.h>
void fun3(float *,int);
float fun4(float *,int);
void main()
{
int i,j,n;
float *a,answer;
for(i=0;i<3;i++)
printf("<----------------------------------------------------------------------------->\n");
printf(" 歡迎進入*雒森*行列式計算程序,請准確輸入以便我為您正確計算! \n");
for(i=0;i<3;i++)
printf("<----------------------------------------------------------------------------->\n");
do
{
printf("請輸入您要計算的行列式的行數或列數n(n>1):");
scanf("%d",&n);
}while(n<2);
a=(float *)malloc(n*n*sizeof(float));
for(i=0;i<n;i++)
{
printf("請輸入您要計算的行列式的:\n");
for(j=0;j<n;j++)
{
printf("第%d行%d列:",i+1,j+1);
scanf("%f",&a[i*n+j]);
}
}
fun3(a,n);
answer=fun4(a,n);
printf("您要計算的行列式的值為:%.3f\n\n\n",answer);
for(i=0;i<3;i++)
printf("<----------------------------------------------------------------------------->\n");
printf(" 歡迎進入*雒森*行列式計算程序,請准確輸入以便我為您正確計算! \n");
for(i=0;i<3;i++)
printf("<----------------------------------------------------------------------------->\n");
}
void fun3(float a[],int n)
{
int i,j,d,f;
float m=1,w;
for(j=0;j<n;j++)
{
for(i=0;i<n;i++)
{
if(a[j*n+j]==0)
{
for(d=j+1;d<n;d++)
{
if(a[d*n+j]!=0)
break;
}
for(f=j;f<n;f++)
a[j*n+f]+=a[d*n+f]*m;
}
if(i!=j)
{
w=-(a[i*n+j]/a[j*n+j]);
for(f=j;f<n;f++)
a[i*n+f]+=a[j*n+f]*w;
}
}
}
}
float fun4(float a[],int n)
{
int i;
float answer=1;
for(i=0;i<n;i++)
answer*=a[i*n+i];
return answer;
}

③ 求行列式的值,用C語言怎麼寫啊

行列式的值的源代碼如下:

#include <stdio.h>

#include <stdlib.h>

void main()

{

int i,j,m,n,s,t,k=1;

double a[n][n],f=1,c,x,sn;

for (i=0;i<n;i++)

for (j=0;j<n;j++)

scanf ("%lf",&a[i][j]);

for (i=0,j=0;i<n&&j<n;i++,j++)

{

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<n;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<n;t++)

a[s][t]-=a[i][t]*(x/a[i][j]);

}

for (i=0;i<n;i++)

f*=a[i][i];

sn=k*f;

printf ("deta=%lf ",sn);

}

(3)行列式的乘法c語言擴展閱讀

1、每個C語言程序中main函數是有且只有一個。

2、C語言程序寫完後,都是先編譯,後連接,最後運行。(.c-->.obj-->.exe)這個過程中注意.c和.obj文件時無法運行的,只有.exe文件才可以運行