输出下列方阵:
n=4
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16

解决方案 »

  1.   

    这是我现写的代码,可以直接运行,自己看看:public static void main(String[] args) {
    try {
    System.out.print("请输入一个正整数:");
    int n = Integer.parseInt(new java.io.BufferedReader(new java.io.InputStreamReader(System.in)).readLine());
    System.out.println("\n"+n+"\n");
    int[][] arr = new int[n][n];
    arr[0][0] = 1;
    arr[n-1][n-1] = n*n;
    int number = 2;
    for(int k=1;k<n;k++){
    if(k%2==0)
    for(int i=0;i<=k;i++){
    arr[k-i][i] = number;
    number++;
    }
    else
    for(int i=0;i<=k;i++){
    arr[i][k-i] = number;
    number++;
    }
    }
    for(int k=n;k<2*(n-1);k++){
    if(k%2==0)
    for(int i=k-n+1;i<n;i++){
    arr[k-i][i] = number;
    number++;
    }
    else
    for(int i=k-n+1;i<n;i++){
    arr[i][k-i] = number;
    number++;
    }
    }
    for(int i= 0;i<n;i++){
    for(int j=0;j<n;j++) System.out.print(arr[i][j]+"\t");
    System.out.println();
    }
    } catch (Exception e) {
    e.printStackTrace();
    }
    }