[算法]蛇形数组算法
来源:互联网 发布:linux系统各种下载 编辑:程序博客网 时间:2024/04/26 23:04
//
// main.c
// test2
//
// Created by 丁小未 on 13-7-14.
// Copyright (c) 2013年 dingxiaowei. All rights reserved.
//
//蛇形函数问题
#include<stdio.h>
#include<string.h>
void main()
{
int i = 0,n,k = 1;
printf("请输入N:");
scanf("%d",&n); //
int j = n-1,s[100][100];
memset(s,0,sizeof(s)); //内存初始化
while(k<=n*n)
{
while(i<=n-1&&s[i][j]==0&&k<=n*n) {s[i++][j] = k++;}
i--;//不然的话上面一行i++之后越过边界了
j--;//不然会覆盖边角的那个数
while(j>=0&&s[i][j]==0&&k<=n*n) {s[i][j--] = k++;}
j++;
i--;
while(i>=0&&s[i][j]==0&&k<=n*n) {s[i--][j] = k++;}
i++;
j++;
while(j<=n-1&&s[i][j]==0&&k<=n*n) {s[i][j++] = k++;}
i++;
j--;
}
//打印输出
for(int x = 0;x<n;x++)
{
for(int y = 0;y<n;y++)
{
if(s[x][y]<10)
printf("%d ",s[x][y]);
else
printf("%d ",s[x][y]);
}
printf("\n");
}
}
结果:
- [算法]蛇形数组算法
- 算法-蛇形数组
- 算法入门-打印蛇形数组
- 蛇形算法
- 蛇形数组输出的算法--ACM题目
- 算法竞赛入门经典 蛇形数组
- 算法奥秘之数组实现开灯问题、蛇形填数
- 算法:蛇形填数
- 算法篇-蛇形矩阵
- 【算法】蛇形矩阵
- 【算法练习】蛇形矩阵
- 蛇形矩阵算法
- 蛇形矩阵实现算法
- 【算法】蛇形填数
- 我的蛇形矩阵算法
- 算法题-蛇形填数
- 【经典算法】:蛇形填数
- 算法竞赛入门经典: 第三章 数组和字符串 3.3蛇形填数
- R multcomp Tukey-Kramer
- 句子中单词的个数
- 编写你的第一个垃圾收集器
- Excel导出 利用poi-3.8-20120326.jar包 和工具包sl-common.jar
- NC57>>nchome>>ierp>>bin>>account.xml
- [算法]蛇形数组算法
- 安装使用template toolkit
- Matlab基本函数-length函数
- Android 获得当前应用的版本号(转)
- 压力测试-WebApplicationStress1.1压力测试工具
- Ubuntu 12.04安装OpenCV2.4.6.1
- sed中关于pattern space和hold space
- STL库中vector的模拟
- 快到极致的Android模拟器——Genymotion