本文主要是介绍蛇形数组编程题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天做了一道蛇形数组的编程题,这题属于相对较基础的题目,现在才发现我真的有太多不足了。
题目如下:
输入一个数字后编程序成:形如这样的图。
#include<stdio.h>
#include<string.h>
#define MAX 10
int a[MAX][MAX];
int main(){int n,x,y,tot=0,i,j;while(scanf("%d",&n)!=EOF){memset(a,0,sizeof(a));tot = a[x=0][y=n-1]=1;while(tot<n*n){while(x+1<n&&!a[x+1][y])a[++x][y]=++tot;//右边的自上而下while(y-1>=0&&!a[x][y-1])a[x][--y]=++tot;//下面的右边到左边while(x-1>=0&&!a[x-1][y])a[--x][y]=++tot;//左边的自下而上while(y+1<n&&!a[x][y+1])a[x][++y]=++tot;//上面的左边到右边}for(i=0;i<n;i++){for(j=0;j<n;j++)printf("%d ",a[i][j]);printf("\n"); }}
}
以后要好好加油咯~
这篇关于蛇形数组编程题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!