这个好像得用到数组,新人也不是很懂~有个java的实现螺旋矩阵的,你看看或许会有帮助! 
 
        输出 n=5 的螺旋方阵 
        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   
        代码: 
                int SIZE = 5; 
                int arr[][] = new int[SIZE][SIZE]; 
                int i, j, k = 0, n, m; 
                n = SIZE; 
                m = (n + 1) / 2; 
                for (i = 0; i < n; i++) { 
                        // 顶边,从左到右,行不变列变 
                        for (j = i; j <= n - i - 1; j++) 
                                arr[i][j] = ++k;// 输出1、2、3、4、13、14 
                         
                        // 右边,从上到下,行变列不变 
                        for (j = i + 1; j <= n - i - 1; j++) 
                                arr[j][n - i - 1] = ++k; // 输出5、6、7、15 
                         
                        // 底边,从右到左,行不变列变 
                        for (j = n - i - 2; j >= i; j--) 
                                arr[n - i - 1][j] = ++k; // 输出8、9、10、16 
                         
                        // 左边,从下到上,行变列不变 
                        for (j = n - i - 2; j >= i + 1; j--) 
                                arr[j][i] = ++k; // 输出11、12 
                } 
                for (i = 0; i < n; i++) { 
                        for (j = 0; j < n; j++) 
                                System.out.print(arr[i][j] + "\t"); 
                        System.out.println(""); 
                } |