程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 矩陣乘法,矩陣乘法公式

矩陣乘法,矩陣乘法公式

編輯:關於C語言

矩陣乘法,矩陣乘法公式


 

 1 #include<stdio.h>
 2 
 3 //宏定義 
 4 #define max_row 200 //定義矩陣最大的行數 
 5 #define max_column 200 //定義矩陣最大的列數 
 6 
 7 int main()
 8 {
 9     int i,j,k;
10     int m,s,n; //用於記錄矩陣A、B和C的行數和列數:矩陣A:m*s;矩陣B:s*n;矩陣C:m*n 
11     int A[max_row][max_column],B[max_row][max_column],C[max_row][max_column]={{0},{0}}; //三個二維數組,分別記錄矩陣A、B和C 
12     
13     //輸入 
14     scanf("%d%d%d",&m,&s,&n); //輸入行、列數 
15     for(i=0;i<m;i++) //輸入矩陣A 
16         for(j=0;j<s;j++)
17             scanf("%d",&A[i][j]);
18     for(i=0;i<s;i++) //輸入矩陣B 
19         for(j=0;j<n;j++)
20             scanf("%d",&B[i][j]);
21     
22     //矩陣相乘        
23     for(i=0;i<m;i++) 
24         for(j=0;j<n;j++)
25             for(k=0;k<s;k++)
26                 C[i][j]+=A[i][k]*B[k][j]; //矩陣C應該是m行n列,其中C(i,j)等於矩陣A第i行行向量與矩陣B第j列列向量的內積
27     
28     //輸出 
29     for(i=0;i<m;i++)
30     {
31         for(j=0;j<n;j++)
32             printf("%d ",C[i][j]);
33         putchar('\n');
34     }
35 
36     return 0;
37 }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved