我们来自五湖四海,不为别的,只因有共同的爱好,为中国互联网发展出一分力!
领航时时彩重庆版

时时彩专家杀号哪家准:C语言每日小练(二)——蛇形数组

2014年05月12日01:04 阅读: 32934 次

领航时时彩重庆版 www.9nwl5.cn 标签: C语言每日小练(二)——蛇形数组

例:在n*n方阵里输入1,2,3,...,n*n,要求填成蛇形。例如n=4时方阵为:

10 11 12 1

9 16 13 2

8 15 14 3

7 6 5 4

上面的方阵中,多余的空格知识为了便于观察矩阵,不必严格输出,n<=8。

解:此题需要小小地思考下:在按蛇形填充矩阵的过程中,我们注意到这个固定的过程:下、左、上、右、下、左、上、右... ...这个过程是循环的,也就是说我们找到了解决问题的规律~接下来只要模拟这个过程就可以了!

Code:


?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<stdio.h>
#include<string.h>
int a[10][10];
int main()
{
    int i, j, n, count;
    memset(a, 0, sizeof(a));
    scanf("%d", &n);
    count = a[i = 1][j = n] = 1;//赋初值,方向为:右->左
    while(count < n*n)
    {
        while(i<n &&="" !a[i+1][j])="" a[++i][j]="++count;//下" while(j="">1 && !a[i][j-1]) a[i][--j] = ++count;//左
        while(i>1 && !a[i-1][j]) a[--i][j] = ++count;//上
        while(j<n &&="" !a[i][j+1])="" a[i][++j]="++count;//右" }="" for(i="1;" i="" <="n;" i++)="" for(j="1;" j="" j++)="" {="" if(j="=" n)="" printf("%3d\n",="" a[i][j]);="" else="" printf("%3d",="" return="" 0;="" pre="">在填充每个方向时,判断下一个位置是否合适(越界或已填充)~<p></p>
<p>运行结果:</p>
<p><img src="//www.ctocto.com/uploadfile/Collfiles/20140410/2014041010073029.jpg" alt="" style="width: 630px; height: 205.11627906976744px;"><br>
<br>
</p>                        </n></n></string.h></stdio.h>

分享到: 更多
©2019 安全焦点 版权所有.

  • 这些“难民”大部分好吃懒做,无一技之长,犯罪率又高,你要接回去就噹祖宗供着吧。[哈哈] 2019-04-23
  • 铜梁这位30岁小伙抱上吉他骑着摩托去北极过生! 2019-04-23
  • 2018年世界杯防骗宝典!拒绝和骗子一起狂欢! 2019-04-16
  • [微笑]其实很简单就能破这个局:立法禁止通过房地产二次交易获利,炒房就会被杜绝,炒房一旦被杜绝,房价就会受正常供需关系影响波动在合理范围内。 2019-04-16
  • 中国人打仗?被逗了。独生子一代、捧在手里长大的90后00后、站在甲板上飒爽英姿、硝烟战火血肉横飞的场景、会失去行动能力的。这不是耸人听闻。 2019-04-14
  • 乌鲁木齐市水磨沟区开建两座立体停车库 2019-04-14
  • 吕洪蕾:网络信息技术在干部工作中的运用研究 2019-04-04
  • 聚焦中央经济工作会议 2019-03-30
  • 沈杰:在北京打拼的“90后”台湾律师 2019-03-30
  • 法国总统马克龙首次访华 法国居民期待成果 2019-03-25
  • 【新媒体矩阵】长城编小厨 2019-03-25
  • 1949年刚刚进入北平的人民日报校对科夜班工作场面 2019-03-22
  • 江西省“放管服”改革再出实招 2019-03-21
  • 让“毒跑道”绝迹 内蒙古各方联手共同监管校园跑道 2019-03-20
  • 宁夏石嘴山支队隆重举行退伍老兵欢送仪式 2019-03-19
  • 950| 889| 285| 688| 271| 167| 835| 968| 398| 755|