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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 ylca 于 2016-7-10 00:37 编辑
  1. private static  void myPrintArray(int[][] nums) {
  2. /**
  3. * width = 宽度
  4. * height = 高度
  5. * circle = 圈数
  6. * num = 要打印的数值
  7. * count = 计数器
  8. */
  9. for (int width = 0, height = 0, circle = nums.length - 1, count = 0, num = 1;
  10.                 count < nums.length; width++, height++, circle--, count++) {
  11. while (width <= circle - 1) { nums[height][width++] = num++; }   // 宽度++ 往右移动赋值
  12. while (height < circle) {nums[height++][width] = num++; }         // 高度++ 往下移动赋值
  13. while (width > count) {nums[height][width--] = num++; }         // 宽度-- 往左移动赋值
  14. while (height > count) {nums[height--][width] = num++;}        // 高度-- 往上移动赋值
  15. if (circle == count) {nums[height][width] = num; }    // 如果圈数等于计数器 对最后一位数进行赋值
  16. }
  17. }
复制代码

2 个回复

倒序浏览
看看今天会不会出这一道题
回复 使用道具 举报
丹唯伯夷 发表于 2016-7-18 07:31
看看今天会不会出这一道题

这个是入学考试题
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马