import java.util.Scanner; public class Test4 { int date[][]=null; public static void main(String[] args) { Test4 test=new Test4(); int n=test.getInput();//获取一个数 test.createArray(n);//分配内存 test.Caozuo(n);//计算 test.Output(n);//输出 } public int getInput() { Scanner s=new Scanner(System.in); return s.nextInt();//获取一个数 } public void createArray(int n) { date=new int[n][]; for(int i=0;i<n;i++)//输入 { date[i]=new int[n-i]; } } public void Output(int n) { for(int i=0;i<n;i++)//输出 { for(int j=0;j<date[i].length;j++) { System.out.print(date[i][j]+"\t"); } System.out.println(); } } public void Caozuo(int n) { int number=1; int xunhuan=n/3+1;//暂时不知到xunhuan取值为什么最好,按规律设置的 for(int m=0;m<xunhuan;m++) { for(int i=m;i<n-2*m;i++)//横向 { date[m][i]=number; number++; } for(int i=1+m;i<n-2*m;i++)//斜向 { date[i][n-i-1-m]=number; number++; } for(int i=n-2-2*m;i>m;i--)//竖向 { date[i][m]=number; number++; } } } } |