输入4
输出
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16
看不出你这个矩阵的规律,除非你维护了矩阵的信息,直接硬性按这个信息输出。
import java.util.Scanner;
/**
* 蛇形矩阵
* @author Administrator
*
*/
public class Demo {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
System.out.println("请输入您想要的行数:");
int num=s.nextInt();
System.out.println("您输入的行数是:"+num);
System.out.println("打印后的蛇形矩阵是:");
int start=1;
int end=num;
int[][] a=new int[num][num];
int b=0;
while(start<end){
for (int i = start; i < end; i++) {
b++;
a[start-1][i-1]=b;
}
for(int i=start;i<end;i++){
b++;
a[i-1][end-1]=b;
}
for(int i=end;i>start;i--){
b++;
a[end-1][i-1]=b;
}
for(int i=end;i>start;i--){
b++;
a[i-1][start-1]=b;
}
start++;
end--;
}
//奇数加1
if (num%2!=0) {
b++;
a[num/2][num/2]=b;
}
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println();
System.out.println();
}
}
}
看看这个可以不