请写一个整数组成的矩阵转置程序,及行变成列,列变成行?

import java.util.*;
public class enghth {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.println("请定义一个二维数组的第一维的长度:");
        int n=input.nextInt();//用来接收二维数组的一维数组的长度
        System.out.println("请定义一个二维数组的第二维长度:");
        int m=input.nextInt();//用来接收二维数组的二维长度
        int[][] arr=new int[n][m];//定义二维数组
        int[][] arrs=new int[arr[0].length][arr.length];//定义一个新的二维数组 用与跟之前的二维数组做交换使用
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                System.out.println("请输入你要定义的二维数组的第"+(i+1)+"个数组的第"+(j+1)+"个数的值为:");
                arr[i][j]=input.nextInt();//循环接收二维数组的数据
            }
        }
        System.out.print("该数组为:");
        System.out.println();
        for(int i=0;i<arr.length;i++){//输出接收到的二维数组
            for(int j=0;j<arr[i].length;j++){
                System.out.print(arr[i][j]+" ");
            }
            System.out.println();
        }
        
        for(int i=0;i<arrs.length;i++){
            for(int j=0;j<arrs[i].length;j++){//用于交换  行变列
                arrs[i][j]=arr[j][i];
            }
        }
        System.out.println("转换后为:");
        for(int i=0;i<arrs.length;i++){//输出交换后的二维数组
            for(int j=0;j<arrs[i].length;j++){
                System.out.print(arrs[i][j]+" ");
            }
            System.out.println();
        }
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容