C/C++程序设计与算法第五周:实现二维矩阵乘法运算

二维矩阵乘法:编写程序算出连个矩阵相乘的结果
输入要求:先输入第一个矩阵大小,再输入每一行的矩阵数字
输入第二个矩阵大小,输入每一行的矩阵内容

  • 两个矩阵相乘必须满足:第一个矩阵的行,等于第二个矩阵的列
    假定满足要求
#include<iostream>
using namespace std;
#define MAX_SIZE 8
int A[MAX_SIZE][MAX_SIZE]={0};
int B[MAX_SIZE][MAX_SIZE]={0};
int C[MAX_SIZE][MAX_SIZE]={0};
int main(){
    int m,n;
	cin >>m >>n;
    int i;
	for( i = 0;i< m;i++)
	    for(int j = 0;j< n;j++)  //矩阵 A
           cin>>A[i][j];
   
    cout<<"第二个矩阵 " <<endl;
    int p,q;
	cin >>p >>q;                 //矩阵 B
	for( i = 0;i< p;i++)
	    for(int j = 0;j< q;j++)
           cin>>B[i][j];
	
    for( i = 0;i< m;i++){         // 相乘算法
	    for(int j = 0;j< p ;j++){
		   C[i][j] = 0;
		   for(int k = 0;k< n;k++)
		      C[i][j] += A[i][k] * B[k][j];
	    }
	}
	cout<<"矩阵结果 " <<endl;
	for( i = 0;i< m;i++){       // 输出A
	   for(int j = 0;j< n;j++)
	      cout<< A[i][j]<<" ";
       cout<< endl;
    }
	cout<<endl;
    for( i = 0;i< p;i++){       // 输出B
	   for(int j = 0;j< q;j++)
	      cout<< B[i][j]<<" ";
       cout<< endl;
    }
    cout<<endl;
	for( i = 0;i< m;i++){       // 输出C
	   for(int j = 0;j< q;j++)
	      cout<< C[i][j]<<" ";
       cout<< endl;
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值