1 /// <summary>
2 /// 矩阵乘法
3 /// </summary>
4 /// <param name="A">矩阵A</param>
5 /// <param name="B">矩阵B</param>
6 /// <returns>返回矩阵C</returns>
7 public double[,] multiply(double[,] A, double[,] B)
8 {
9 int Arow, Acolumn, Brow, Bcolumn;//分别为A、B矩阵的行数、列数
10 Arow = A.GetLength(0);//GetLength(0)为获取A矩阵的行数
11 Acolumn = A.GetLength(1);//GetLength(1)为获取B矩阵的列数
12 Brow = B.GetLength(0);
13 Bcolumn = B.GetLength(1);
14 double[,] C = new double[Arow, Bcolumn];//相乘后的矩阵 将A的行数做为行数、将B的列数作为列数
15 for (int i = 0; i < Arow; i++)//行数
16 {
17 for (int j = 0; j < Bcolumn; j++)//列数
18 {
19 for (int k = 0; k < Acolumn; k++)
20 {
21 C[i, j] += A[i, k] * B[k, j];//计算A的列数个数的乘积的和
22 }
23 }
24 }
25 return C;
26 }