为了账号安全,请及时绑定邮箱和手机立即绑定

java中的二维数组转置

java中的二维数组转置

qq_Decisivem_0 2017-11-05 20:04:08
题目描述4-18 矩阵a用数组表示为 int a[ ][ ]={{1,2,3,4},{2,3,4,5},{3,4,5,6}},定义矩阵b为int b[ ][ ]=new int[4][3];编程实现将矩阵a转置,转置后的数据存入矩阵b中。 输入描述输入一个二维数组 输出描述输出该二维数组的转置数组 输入样例1 2 3 42 3 4 53 4 5 6 输出样例1 2 32 3 43 4 54 5 6 import java.util.*;public class Main{  public static void main(String[]args)  {   Scanner sc=new Scanner(System.in);   int n=sc.nextInt();   int m=sc.nextInt();   int a[][]=new int [n][m];   for(int i=0;i<n;i++)   {    for(int j=0;j<m;j++)    {      a[i][j]=sc.nextInt();    }       }      int  b[][]=new int [m][n];   for(int i=0;i<m;i++)   {    for(int j=0;j<n;j++)    {     b[i][j]=a[j][i];     System.out.print(b[i][j] +" ");    }    System.out.println();   }  }  }我写的代码不能通过,有什么不用输入行列可以做出来的方法吗,希望可以留一下代码
查看完整描述

1 回答

?
蜂之谷

TA贡献564条经验 获得超863个赞

int a[ ][ ]={{1,2,3,4},{2,3,4,5},{3,4,5,6}};
		 int b[ ][ ]=new int[4][3];
		 for (int i = 0; i < b.length; i++) {
			 for (int j = 0; j < b[i].length; j++) {
				b[i][j] = a[j][i];
			}
		}
		 
		 for (int i = 0; i < b.length; i++) {
			 for (int j = 0; j < b[i].length; j++) {
				System.out.print(b[i][j] + " ");
			}
			 System.out.println();
		}


查看完整回答
反对 回复 2017-11-06
  • 1 回答
  • 0 关注
  • 2498 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信