悠游


私信TA

用户名:uq_87643911115

访问量:6787

签 名:

你好

等  级
排  名 42
经  验 12783
参赛次数 0
文章发表 206
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

大家好!我是糕手

解题思路:

矩阵相乘,要求两个矩阵必须行或者列有一个相同,才可以乘


举一个3x2矩阵和2x3矩阵的例子:

2 2      2 3 3      2×2+2×4  2×3+2×4  2×3+2×4

3 3  ×  4 4 4  〓  3×2+3×4  3×3+3×4  3×3+3×4

4 4               4×2+4×4  4×3+4×4  4×3+4×4


注意事项:

参考代码:

#include<stdio.h>
int main()
{
	int n,m,k;
	scanf("%d%d%d",&n,&m,&k);
	int a[n][m],b[m][k];
	for(int i=0;i<n;i++)
	{
	    for(int j=0;j<m;j++)
	    {
	        scanf("%d",&a[i][j]);
	    }
	}
	for(int i=0;i<m;i++)
	{
	    for(int j=0;j<k;j++)
	    {
	        scanf("%d",&b[i][j]);
	    }
	}
	int c[n][k];
	for(int i=0;i<n;i++)
	{
	    for(int j=0;j<k;j++)
	    {
	        c[i][j]=0;
	    }
	}
	for(int i=0;i<n;i++)
	{
	    for(int j=0;j<k;j++)
	    {
	        for(int l=0;l<m;l++)//斯,l(L)跟1简直一模一样,题外话题外话
	        {
	            c[i][j]+=a[i][l]*b[l][j];
	        }
	        printf("%d ",c[i][j]);
	    }
	    printf("\n");
	}
	return 0;
}


 

0.0分

3 人评分

  评论区

  • «
  • »