输入奇数n,形成n*n阶方阵。要求在这个方阵中填入1到n的平方的数,使得方阵的每行的和、每列的和及两条对角线的和都相等。
输入格式:
输入奇数n
输出格式:
输出该九宫格,每个数占用4个字符位置,左对齐排列。 格式提示:System.out.printf("%-4d",x); 算法提示:1、第一行的中间填1; 2、后续数字位置的确定:在当前数字的右上角;如果超出边界,则循环到另一边;如果确定好的后续位置已经有值,则当前位置的下面就是后续位置。
输入样例:
3
结尾无空行
输出样例:
8 1 6
3 5 7
4 9 2
结尾无空行
import java.util.Scanner;
public class Main {
public static void main(String[] args){
int n ;
boolean mark = true;
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
while (mark){
if (n % 2 == 0 || n < 0){
n = sc.nextInt();
}
else{
mark = false;
}
}
int[][] arr = new int[n][n