打印螺旋矩阵

来源:互联网 发布:淘宝店拍照 编辑:程序博客网 时间:2024/06/05 18:45


打印一个如下的螺旋矩阵:

  1    2    3    4   5 
 16  17  18  19  6 
 15  24  25  20  7 
 14  23  22  21  8 
 13  12  11  10  9 



import java.util.Scanner;public class Example {public static void main(String[] args) {int a[][] = new int[111][111];Scanner sc = new Scanner(System.in);int n = sc.nextInt();int i, j, p = 0, m;if (n % 2 == 0) {m = n / 2;} else {m = n / 2 + 1;}for (i = 0; i <= m - 1; i++) {for (j = i; j < n - i; j++) {// 12345\\17 18 19\\25p++;a[i][j] = p;}for (j = i + 1; j < n - i; j++) {// 6789\\20 21p++;a[j][n - i - 1] = p;}for (j = n - i - 2; j >= i; j--) {// 10 11 12 13\\22 23p++;a[n - i - 1][j] = p;}for (j = n - i - 2; j >= i + 1; j--) {// 14 15 16\\24p++;a[j][i] = p;}}for (i = 0; i < n; i++) {for (j = 0; j < n; j++) {System.out.print(a[i][j] + "\t");}System.out.println();}}}



原创粉丝点击