描述

在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:
10 11 12 1
9 16 13 2
8 15 14 3
7 6 5 4

输入

直接输入方陈的维数,即n的值。(n<=100)

输出

输出结果是蛇形方陈。

样例输入

3

样例输出

7 8 1
6 9 2
5 4 3
 
#include <stdio.h> /*蛇形填数*/ int main(int argc, char **argv) { int i,j,n,m, flag,flag1; int buf[100][100]={0}; scanf("%d", &n); flag=0; flag1=0; m=1; i=-1; j=n-1; while(1){ //printf("test1, m=%d\n", m); while(i!=n-flag-1){ buf[++i][j]=m++; } if(m-1==n*n){ break; } //printf("test2, m=%d\n", m); while(j!=flag){ buf[i][--j]=m++; } if(m-1==n*n){ break; } flag++; //printf("test3, m=%d\n", m); while(i!=flag-1){ buf[--i][j]=m++; } if(m-1==n*n){ break; } while(j!=n-flag-1){ buf[i][++j]=m++; } //printf("test4, m=%d\n", m); if(m-1==n*n){ break; } } for(i=0; i<n; i++){ for(j=0; j<n; j++){ printf("%d ", buf[i][j]); } printf("\n"); } return 0; } 
OJ最优程序:
 
#include<stdio.h> int main() { int a,b,c,d,n,sum=1; int yi[101][101]; scanf("%d",&n); for(a=0;a<=(n-1)/2;a++) { for(b=a;b<=n-a-1;b++) yi[b][n-a-1]=sum++; for(b=n-2-a;b>=a;b--) yi[n-a-1][b]=sum++; for(b=n-a-2;b>=a;b--) yi[b][a]=sum++; for(b=a+1;b<n-a-1;b++) yi[a][b]=sum++; } for(c=0;c<n;c++) { for(d=0;d<n;d++) printf("%d ",yi[c][d]); printf("\n"); } } 

C语言(24)蛇形填数相关推荐

  1. 蓝桥杯真题——蛇形填数(c语言)

    目录 一.题目描述 二.解题思路 三.程序操作 一.题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可. 如下图所示,小明用从 1 开始的正整数"蛇形" ...

  2. 2020年第十一届蓝桥杯 - 省赛 - C/C++大学生A组 - C.蛇形填数

    2020年第十一届蓝桥杯 - 省赛 - C/C++大学生A组 - C.蛇形填数 Ideas 这题其实严格意义上属于一道找规律的题目,并不是啥算法题. 我们可以先按照它的规律多写几行. 1 2 6 7 ...

  3. 2020年第十一届蓝桥杯 - 省赛 - Python大学组 - D.蛇形填数

    这道题同样还是: 2020年第十一届蓝桥杯 - 省赛 - C/C++研究生组 - D.蛇形填数 2020年第十一届蓝桥杯 - 省赛 - Java研究生组 - D.蛇形填数 Ideas 这题其实严格意义 ...

  4. 计算机精英协会考核题 —— 第二题:蛇形填数

    题目 2.蛇形填数 给出 n * n 方阵,要求从 1 开始按顺序依次填写,填写方式如下: n = 4 时, 1 8 9 16 2 7 10 15 3 6 11 14 4 5 12 13 输入 n,请 ...

  5. 第十一届蓝桥杯A组省赛填空试题 C: 蛇形填数(Java)

    试题 C: 蛇形填数 本题总分:10 分 [问题描述] 如下图所示,小明用从 1 开始的正整数"蛇形"填充无限大的矩阵. 容易看出矩阵第二行第二列中的数是 5.请你计算矩阵中第 2 ...

  6. 信息学奥赛一本通 2045:【例5.13】蛇形填数

    [题目链接] ybt 2045:[例5.13]蛇形填数 [题目考点] 1. 二维数组 2. 方向数组(可能用到) int dir[4][2] = {{1,0},{0,-1},{-1,0},{0,1}} ...

  7. 信息学奥赛一本通(2045:【例5.13】蛇形填数)

    2045:[例5.13]蛇形填数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 374     通过数: 191 [题目描述] 在n×nn×n方阵里填入1,2,3 ...

  8. NYOJ33 - 蛇形填数

    描述: 在n*n方陈里填入1,2,-,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 输入: 直接输入方陈的维数,即n的值.( ...

  9. 南阳oj入门题-蛇形填数

    /** 蛇形填数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 ...

最新文章

  1. 拿高薪的程序员,都学习了什么编程语言?
  2. Openstack组件部署 — Nova_安装和配置Controller Node
  3. 汇编语言随笔(9)-实验11(用条件转移指令来编写子程序)
  4. Asp.Net Web Api 2 实现多文件打包并下载文件示例源码
  5. struts2 验证框架、国际化
  6. java 图形绘制_Java Graphics 图形绘制
  7. matlab中邮递员问题实例,中国邮递员问题matlab
  8. Raspbian 中国软件源
  9. 混口饭吃,谈不上喜欢
  10. go interface 转 string_跟我一起学习go语言,map「string」interface「」代码示例
  11. nodejs mysql数据推送_使用Nodejs实现实时推送MySQL数据库最新信息到客户端
  12. 关于Vue页面JS+JQ无法调用页面方法与data
  13. 电子邮件正则表达式-集结号
  14. 当游戏设计遇上建筑学
  15. 五分钟科普:微信 PC 端多开的秘密
  16. 手游战斗计算放在客户端还是服务器端
  17. Latex系列教程 汇总
  18. 字符串匹配 KMP算法 C++
  19. html导航凹凸效果,纯CSS实现底部弧度效果(凹凸圆弧)
  20. javaScript能做什么

热门文章

  1. iOS UITextField 明文密文切换时密文被清空问题
  2. 有哪些补脑的食物?IT族必备的饮品有哪些?[图]
  3. 解决github下载慢的问题
  4. 用c++设计一个表示二维圆形的Circle类,用于计算空心圆环的体积和重量。
  5. 微信小程序 实现标签多选框
  6. 基于Java毕业设计药品管理系统演示录像 2021源码+系统+mysql+lw文档+部署软件
  7. 2022秋软件工程第一次结对编程时作业
  8. linux中excel的换行符,Excel skill: 如何替换换行符,以及如何把一格转换成多行/多列...
  9. LaTeX字体族、字体系列、字体形状和字体大小设置
  10. break return continue