天天看點

第三次NO.2矩陣轉置

編寫一個程式,要求能夠對一個NxN(N<10)的矩陣進行行列互換。每個矩陣的元素的取值為10~100的整數。

例如:

[95, 64, 85, 12]

[87, 43, 70, 23]

[87, 37, 26, 26]

[49, 95, 57, 21]

===>

[95, 87, 87, 49]

[64, 43, 37, 95]

[85, 70, 26, 57]

[12, 23, 26, 21]

輸入:

第一行為N,緊跟着每行是對應矩陣元素的資料

輸出:

行列轉換後的矩陣(每一行的元素用方括号括起來,元素之間用逗号和空格", "分隔。提示:用Arrays.toString()輸出即滿足格式要求)

示例輸入:

4↵

95□64□85□12↵

87□43□70□23↵

87□37□26□26↵

49□95□57□21↵

示例輸出:

[95,□87,□87,□49]↵

[64,□43,□37,□95]↵

[85,□70,□26,□57]↵

[12,□23,□26,□21]↵

老師測試程式通過源碼

import java.util.Scanner;
/*
 * create 2013/4/3 10:24
 */
public class Main {
	public static void main(String  args[]) {
	    Scanner cin = new Scanner(System.in);
         //輸入矩陣次元
 	    int N = cin.nextInt();
 	    int arr[][] = new int[N][N];
         //循環取得輸入矩陣資料
 	    for(int i=0;i<N;i++){
 	 	    for(int j=0;j<N;j++){
 	 	    	arr[i][j]=cin.nextInt();
 	 	    }
 	    }
         //轉置矩陣資料
 	    for(int i=0;i<N;i++){
            //矩陣每行首輸出[
 	    	System.out.print("[");
 	 	    for(int j=0;j<N;j++){
                   //每列最後一列前所有元素與“,”連接配接輸出。
 	 	    	if(j<(N-1)){
 	 	    		System.out.print(arr[j][i]+", ");
 	 	    	}
                   //最後一列元素連接配接“]”輸出結束并換行。
 	 	    	else if(j==(N-1)){
 	 	    		System.out.println(arr[j][i]+"]");
 	 	    	}
 	 	    }
 	    }
	}

}