二维数组之矩阵乘法
矩阵乘法
问题描述
输入两个矩阵,分别是ms,sn大小。输出两个矩阵相乘的结果。
解题思路
A矩阵的第i行乘以B矩阵第j列相加,作为新矩阵的第i行第j列元素。
方法
运用for循环控制行和列
源代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int m = sc.nextInt();
int s = sc.nextInt();
int n = sc.nextInt();
int a[][] = new int[m][s];
for(int i=0;i<m;i++)
{
for(int j=0;j<s;j++)
{
a[i][j] = sc.nextInt();
}
}
int b[][] = new int[s][n];
for(int i=0;i<s;i++)
{
for(int j=0;j<n;j++)
{
b[i][j] = sc.nextInt();
}
}
int c[][] = new int[m][n];
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
int sum = 0;
for(int k=0;k<s;k++)
{
sum += a[i][k]*b[k][j];
}
c[i][j] = sum;
}
}
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
if(j==n-1)
System.out.println(c[i][j]);
else {
System.out.print(c[i][j]+" ");
}
}
}
}
}