A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡帅 中级黑马   /  2015-4-8 23:53  /  811 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. /*
  2. 输出 n=5 的螺旋方阵
  3.         1  2  3  4  5
  4.         16 17 18 19 6
  5.         15 24 25 20 7
  6.         14 23 22 21 8
  7.         13 12 11 10 9

  8. */
  9. class  Example001
  10. {
  11.         public static void main(String[] args)
  12.         {
  13.                        
  14.                 int size = 5;
  15.                 int arr[][] = new int[size][size];
  16.                 int i, j, k = 0, n, m;
  17.                 n = size;
  18.                 for (i = 0; i < n; i++) {
  19.                         // 顶边,从左到右,行不变列变
  20.                         for (j = i; j <= n - i - 1; j++)
  21.                                 arr[i][j] = ++k;// i=0进来是输出1、2、3、4、5; i=1进来输出17、18、19 ;i=3,输出25
  22.                        
  23.                         // 右边,从上到下,行变列不变
  24.                         for (j = i + 1; j <= n - i - 1; j++)
  25.                                 arr[j][n - i - 1] = ++k; // i=0进来是输出6、7、8、9 ; i=1进来输出20、21
  26.                        
  27.                         // 底边,从右到左,行不变列变
  28.                         for (j = n - i - 2; j >= i; j--)
  29.                                 arr[n - i - 1][j] = ++k; // i=0进来是输出10、11、12、13;i=1进来输出22、23
  30.                        
  31.                         // 左边,从下到上,行变列不变
  32.                         for (j = n - i - 2; j >= i + 1; j--)
  33.                                 arr[j][i] = ++k; // i=0进来是输出14、15、16 ;i=1进来输出24
  34.                 }
  35.                
  36.                 for (i = 0; i < n; i++) {
  37.                         for (j = 0; j < n; j++)
  38.                                 System.out.print(arr[i][j] + "\t");
  39.                         System.out.println();
  40.                 }
  41.                
  42.                
  43.                
  44.         }
  45. }
复制代码

10 个回复

倒序浏览
学习了!!!多谢分享~
回复 使用道具 举报
多谢!!!
回复 使用道具 举报
不错的,学习了
回复 使用道具 举报
这个还是比较复杂的。。
回复 使用道具 举报
学习学习
回复 使用道具 举报
学习学习·····
回复 使用道具 举报
不错不错,学习了。逻辑好复杂的样子,理解不透是写不出来的。
回复 使用道具 举报
学习了,看了半天终于看懂了
回复 使用道具 举报
路过膜拜
回复 使用道具 举报
大神你好
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马