您的位置:首页 > 编程语言 > Java开发

蓝桥杯矩阵乘法问题(JAVA)

2018-01-02 21:15 423 查看
import java.util.Scanner;

public class 矩阵乘法 {

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];
 int[][] b=new int[s]
;
 for(int i=0;i<m;i++){
 for(int j=0;j<s;j++){
 a[i][j]=sc.nextInt();
 }
 }
 for(int i=0;i<s;i++){
 for(int j=0;j<n;j++){
 b[i][j]=sc.nextInt();
 }
 }
int[][] c=new int[a.length][b[0].length];
c=Multi(a,b);
for(int i=0;i<a.length;i++){
for(int j=0;j<b[0].length;j++){
System.out.print(c[i][j]+" ");
}
System.out.println();
}
}
public static int[][] Multi(int[][] a,int[][] b){
int[][] c=new int[a.length][b[0].length];
      //当矩阵A的列数等于矩阵B的行数时,A与B可以相乘

  if(a[0].length!=b.length){
  System.out.println("Error!!!");
  return c;
  }
  for(int i=0;i<c.length;i++){
  for(int j=0;j<c[0].length;j++){
  for(int j2=0;j2<a[0].length;j2++){
  c[i][j]=c[i][j]+a[i][j2]*b[j2][j];
  }
  }
  }
return c;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: