/*
陣列模擬簡單兩矩陣相乘 A[](mxn)、B[](nxp)
為了驗算數學而寫
使用DOS命令更改視窗大小標題及色彩
*/

#include <stdio.h>
#include <stdlib.h>
int m,n,p,i,j,k,l;

int main()
{
  system("title 矩陣乘法計算  By 彩");
  system("mode con cols=75 lines=30");
  system("color 8F");
  while(1)
  {
    printf("\n\n輸入矩陣A之列數m、行數及矩陣B之行數p\n");
    scanf("%d",&m);
    scanf("%d",&n);
    scanf("%d",&p);
    float a[m][n],b[n][p],c[m][p];
    
    printf("\n輸入A\n");
    for(i=0;i<m;i++)
    {
      for(j=0;j<n;j++)
      {  scanf("%f",&a[i][j]);  }
    }
    
    printf("\n輸入 B\n");
    for(i=0;i<n;i++)
    {
      for(j=0;j<p;j++)
      {  scanf("%f",&b[i][j]);  }
    }
    
    for(i=0;i<m;i++)
    {
      for(j=0;j<p;j++)
      {
        c[i][j]=0;
        for(k=0;k<n;k++)
        {  c[i][j]+=a[i][k]*b[k][j];  }
      }
    }
    
    printf("===============\n");
    for(i=0;i<m;i++)
    {
      for(j=0;j<p;j++)
      {  printf("%.1f   ",c[i][j]);  }
      printf("\n");
    }
  }
}
/*
轉用請附來源說明
以歌者之名流浪
http://jaacnaett.pixnet.net/blog/
*/

arrow
arrow
    全站熱搜

    jaacnaett 發表在 痞客邦 留言(4) 人氣()