两个行列式的积的含义是?行列式就是个矩阵吧,也就可以理解为是一个二维数组吧,那么两个行列式的积怎么求呢?请大家指教了:)

行至水穷处 坐看去起时
C语言QQ群1:51871776 群2:26313099 群3:47145282
可以用二维数组来求解
两个行列式相乘,前一个的列一定等于后一个的行
你写两个FOR循环就搞定了
附:
两个矩阵相乘的源程序
/*****************A=B*C******************/
#include<stdio.h>
#include<conio.h>
#define X 3
#define Y 3
int a[X][Y];
int b[X][Y];
int c[X][Y];
void matrix(int b[][X],int c[][Y]);
main()
{
int i,j,temp;
clrscr();
printf("Please input int matrix b[%d][%d]\n",X,Y);
for(i=0;i<Y;i++)
for(j=0;j<Y;j++){
scanf("%d",&temp);
b[i][j]=temp;
}
printf("Please input int matrix c[%d][%d]\n",X,Y);
for(i=0;i<X;i++)
for(j=0;j<Y;j++){
scanf("%d",&temp);
c[i][j]=temp;
}
matrix(b,c);
printf("Now print resource matrix b[%d][%d]=",X,Y);
for(i=0;i<X;i++){
printf("\n");
for(j=0;j<Y;j++)
printf("%d ",b[i][j]);
}
printf("\n");
printf("Now print resource matrix c[%d][%d]=",X,Y);
for(i=0;i<X;i++){
printf("\n");
for(j=0;j<Y;j++)
printf("%d ",c[i][j]);
}
printf("\n");
printf("Now printm multiply results matrix a[%d][%d]=B*C:",X,Y);
for(i=0;i<X;i++){
printf("\n");
for(j=0;j<Y;j++)
printf("%d ",a[i][j]);
}
getch();
return 0;
}
/********************************************************************/
void matrix(int b[][X],int c[][Y])
{
int i,j,k,temp;
for(i=0;i<X;i++)
for(j=0;j<Y;j++){
for(k=0;k<Y;k++)
a[i][j]+=b[i][k]*c[k][j];
}
}
[此贴子已经被作者于2007-11-9 11:13:16编辑过]
第一 行列式不是矩阵,它是矩阵通过某种运算得到的结果
比如 A=[1 0 0
0 1 0
0 0 1]
A的行列式就是: |A|=1;
第二 行列式的积 |A|*|B|,首先就是把A,B的行列式求出来。然后相乘就可以了。
(注意:行列式的乘积不是等于矩阵乘积的行列式的)
现在就是要去求行列式,
高等代数里面说了,n级行列式等于所有取自不同行不同列的的n个元素的乘积的代数和。
并且每一项(an1*an2*an3....ann,其中ni表示元素的下标)都带符号的(正负号);符号规则如下:
如果 n1,n2,n3...nn是偶排列,符号是正号
如果是奇排列,是负号。
第三 什么是奇,偶排列?
首先要讲什么是逆续.........
晕,实在太多了,你去找本高等代数看看吧,我讲不下去了......
[此贴子已经被作者于2007-11-9 11:20:51编辑过]