文章目录

  • 题目
  • 思路
  • 代码
  • 收获

题目

思路

其实看到的第一眼我是想利用递归来求解的,但是它这个数圈很奇怪,不是很好利用第n-1个数圈推出第n个数圈。所以就模拟一个一个的暴力打出来。两点在于定义了一个拐角变量turn。因为这个题目的关键就是得到了第n-1个数圈后怎么将打印的方向拐过来,继续打印第n个数圈。每个对应的n应该具备两个这样的拐角点。每4个后就重新回到了原来的打印方向,所以用swich语句来写即可。

代码

#include <iostream>
using namespace std;
int main() {int len, n1, n2;cin >> len;//记录一下起始点n1 = (len - 1) / 2;n2 = n1;//把二维数组开出来int arr[len][len] = {0}; //初始化为0int turn = 1, s = 1;//下面需要确定转弯点for (int i = 1; i <= len * len; i++) {//需要对i进行判断if (i == s * s) {s++;}arr[n1][n2] = i;switch (turn) {case 1:n2++;break;case 2:n1++;break;case 3:n2--;break;case 4:n1--;break;}if (i + 1 == s * s - (s - 1) || i + 1 == s * s - 2 * (s - 1)) {//判断转弯数每个n应该有两个转弯数turn++;}if (turn > 4) {turn = 1;}}for (int i = 0; i < len; i++) {for (int j = 0; j < len; j++) {cout << arr[i][j] << ' ';}cout << endl;}
}

收获

还是多做做模拟题啦,提升代码能力,很多题我有思路,但是无法通过代码来实现。

hnu小学期实训之数圈相关推荐

  1. HNU小学期实训课设

    1,设计概述 由于社会的发展和科技的进步,人们对生活品质要求越来越高,而计算机时代的来临和物联网技术的发展也会给我们的生活带来巨大的变化,所以我希望通过物联网传感技术实现对闹钟的创意设计,从而改进人们 ...

  2. 小学期实训-智慧电子时钟

    摘 要 项目选题为智慧电子时钟,相对于传统时钟,该智慧时钟有实时时钟.实时日期.光照与温度显示.闹钟设置.闹钟关闭密码设置功能.同时,闹钟需要满足一定的条件才能开启,通过光照传感器来实现对闹钟的开启条 ...

  3. java web 小学期实训小节

    这次实训学习了Java spring,mybaits,ssm框架的搭建和整合,详细的了解了 spring框架的流程:1.用户发出请求到前端控制器2.前端控制器请求handlermaping查到hand ...

  4. HNU小学期计算机系统设计与创新基础训练——基于STC学习板的加密信息存储与游戏操作系统(第一部分设计思路+基础原理)

    HNU小学期计算机系统设计与创新基础训练--加密信息存储与游戏操作系统 一. 选题名称 二. 选题背景 三. 实现功能 1. 主要功能 2. 细节设计 四. 设计思路 五. 基本原理 1. 数码管与发 ...

  5. java小游戏实训报告心得_Java实训报告-扫雷.doc

    Java实训报告-扫雷 实训报告书 实训名称: JAVA程序设计实训 系 (部): 信息工程系 专业班级: 计算机科学与技术08-1 学生姓名: 学 号: 指导教师: 完成日期: 山东科技大学泰山科技 ...

  6. 综合专题学期实训IV综合报告

    综合专题学期实训IV综合报告 题目 基于Java的聊天系统设计与实现 所在院系 计算机与信息工程学院 学科专业名称 计算机科学与技术 导师及职称 夏端峰(副高).黄烜(讲师) 撰写时间 2023年6月 ...

  7. 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第二十四节:小项目实训《绝命沙滩》

    <使用Cocos2d-x 开发3D游戏>系列在线课程 第二十四节:小项目实训<绝命沙滩> 视频地址:http://edu.csdn.net/course/detail/1330 ...

  8. 【HNU小学期硬件实训】基于QT上位机的汽车监控警报系统

    测试视频已上传到b站: 基于QT上位机的汽车监控警报系统 一.绪论 本次实验的选题是基于 QT 上位机的汽车行驶监控警报系统,灵感来源于本人在行驶电动车过程 中遇到的问题,为汽车模拟了不同的场景,外接 ...

  9. SSM框架体会和小结(短学期实训)

    短短两周的小学期的实训,我对ssm框架有了初步的认识.所谓ssm就是指spring+springMVC+mybatis .spring用于实现业务的对象,springMVC负责转发请求和视图,而myb ...

最新文章

  1. 21个令程序员泪流满面的瞬间
  2. object references an unsaved transient instance【异常】
  3. linux c指定相对路径,linux c编程,选用popen()得到一个相对路径的绝对路径
  4. Hive的基本操作-创建外部表
  5. 秒杀多线程第十篇 生产者消费者问题
  6. gradle wrapper 版本与 android build tool 版本匹配要求
  7. python的Dict和set类型
  8. MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解
  9. 计算机网络的发展英文,计算机网络英文方向论文选题 计算机网络英文论文题目哪个好...
  10. Swift的函数嵌套和返回内部函数
  11. 每日一词20190313——地图矢量化
  12. [007]爬虫系列 | RPC调用简单示例
  13. 资产管理计划份额转让研究(大资管长文)
  14. 苹果发布 AI 生成模型 GAUDI,文字生成 3D 场景
  15. Signal to Noise Ratio——信噪比
  16. 马丁富勒微服务论文学习
  17. Echarts地图自定义图标Symbol同时动态更改图标进行切换显示
  18. “兼职发明家召集令”
  19. MRM:基于ISMRM研究与欧洲痴呆研究动脉自旋灌注成像临床应用的补充建议
  20. 如何判断Convex Set(凸集)、Convex Function(凸函数)

热门文章

  1. maven 打包时动态替换properties资源文件中的配置值
  2. BZOJ1370 [Baltic2003]Gang团伙
  3. 转:.NET使用一般处理程序生成验证码!
  4. matlab将常值函数转换为变量,MATLAB与科学计算期末复习题题库15.11.12
  5. Qt富文本编辑器QTextDocument
  6. B2B多商铺初期权限数据库设计
  7. mongodb分片部署
  8. 面试常备题(三)----顺时针打印矩阵
  9. 代码优化四部曲:“拆套”、“解耦”、”封装“、“重构”
  10. cpu核心电压:不一定是1.55伏特 : 全体到齐!200 mhz fsb的p4处理器与i875p双通道ddr400芯片组...