| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1655 人关注过本帖
标题:九宫数的问题(原创)
只看楼主 加入收藏
jiansilang
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2004-5-9
收藏
得分:0 

程序我不写了,因为我是看书抄的(我是小鸟麻)。

给个提示:(1---n*n的方阵)

1,将1排到第一行中间一列。

2,从2到最后一个数字,每个数存放的行,列为前一个的行数减一,列数加一。

3,当上个一数的行数为一时,下一个数的行数为n.

4,当上一个数的列数为n时,下一个数的列数为1.

5,若下一个数的位置上有数字了,则下一个数存放到上一个数的列数加一的位置。

OK了,不行的话再留言。

2004-05-28 01:16
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

main()

{int i,j,p=1,a[16][16],k,n;

while(p==1)

{printf(input a number(0~15):");

scanf("%d",&n);

if((n<=15&&n>0)&&(n%2)!=0) p=0; /*输入一个小于15的奇数*/

else {p=1;printf("dataerror!\n");}

}

for(i=0;i<n;i++)

for(j=0;j<n;j++)

a[i][j]=0; /*建立一个n*n的方阵*/

i=0;j=n/2;

a[i][j]=1;

for(k=2;k<=n*n;k++)

{i=i-1;j=j+1;

if(i<0&&j>n-1) {i=i+2;j=j-1;}

else{ if(i<0) i=n-1;

if(j>n-1) j=0;

}

if(a[i][j]==0) a[i][j]=k;

else {i=i+2;j=i-1;a[i][j]=k;}

}

for(i=0;i<n;i++)

for(j=0;j<n;j++)

printf("%4d",a[i][j]);

printf("\n");

}

}

应该是这样的!

[此贴子已经被作者于2004-05-30 19:11:49编辑过]


2004-05-30 19:07
起点线
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-12-7
收藏
得分:0 

找到古董了..


2007-05-27 21:53
老糊涂
Rank: 1
等 级:新手上路
威 望:1
帖 子:117
专家分:0
注 册:2007-5-19
收藏
得分:0 
九宫?没我的&lt;玉挂奇图&gt;有 意思~大家去看看我的帖子

2007-05-28 13:23
快速回复:九宫数的问题(原创)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016916 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved