package com.xhly;
import java.util.Scanner;
public class NeiHui {
static int cnt=0;
static int[][] i = null;
private static int nextInt;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要打印的等长二维数组长度");
nextInt = sc.nextInt();
if (nextInt > 0) {
i=new int[nextInt][nextInt];
cnt = nextInt*nextInt;
shuzu(i,0,nextInt);
} else {
System.out.println("请重新输入");
}
for (int k = 0; k < nextInt; k++) {
for (int j = 0; j < nextInt; j++) {
System.out.print(i[k][j]+"\t");
}
System.out.println();
}
}
public static void shuzu(int[][] i, int start,int end) {
if(nextInt%2==0){
if(end-start==1)
{
i[start][end-1]=cnt--;
return;
}
if(start==end)
return;
for (int j = end-1; j >start; j--) {
i[end-1][j]=cnt--;
}
for (int j = end-1; j >start; j--) {
i[j][start]=cnt--;
}
for (int j = start; j <end-1; j++) {
i[start][j]=cnt--;
}
for (int j = start; j <end-1; j++) {
i[j][end-1]=cnt--;
}
shuzu(i,start+1,end-1);
}else{
if(end-start==1)
{
i[start][end-1]=cnt--;
return;
}
if(start==end)
return;
for (int j = start; j < end-1; j++) {
i[start][j]=cnt--;
}
for (int j = start; j <end-1; j++) {
i[j][end-1]=cnt--;
}
for (int j = end-1; j > start; j--) {
i[end-1][j]=cnt--;
}
for (int j = end-1; j >start; j--) {
i[j][start]=cnt--;
}
shuzu(i,start+1,end-1);
}
}
}
内回文数-java
最新推荐文章于 2022-12-26 17:30:46 发布