足迹~

来源:互联网 发布:景德镇金域名都 编辑:程序博客网 时间:2024/04/27 14:06

同学问的一个数字游戏,当时想了很久。

考虑用递归,发现实现不了,只好用笨办法,找出数字生成的规律。

看起来也许很费劲,但算是我的探索足迹吧。作为我的BLOG的首篇文章,希望我以后有更大的进步!

/*

输入N=4,输出;以下……
* 1     2    3     4
* 12  13  14   5
* 11  16  15   6
* 10   9    8     7
*/

#include <stdio.h>

#define N 4
void main()
{
 int i,j,k,n,a[N][N];
 k=1;

 for(j=0,n=N;n>=j;n--,j++)
 {
  for(i=j;i<n;i++)
   a[j][i]=k++;
  for(i=j+1;i<n;i++)
   a[i][n-1]=k++;
  for(i=n-2;i>=j;i--)
   a[n-1][i]=k++;
  for(i=n-2;i>j;i--)
   a[i][j]=k++;
 }
 for(i=0;i<N;i++)
 { for(j=0;j<N;j++)
   printf("%d/t",a[i][j]);
  printf("/n");
 }
}

原创粉丝点击