| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1723 人关注过本帖
标题:[求助]编写一个程序,要求输出字轮转组成一正方形,想了半天没想出来.
只看楼主 加入收藏
chaogede
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-4-15
收藏
 问题点数:0 回复次数:7 
[求助]编写一个程序,要求输出字轮转组成一正方形,想了半天没想出来.

用C语言编写一个程序,要求输出字轮转组成一正方形,已n作为边长,比如:


1 12 11 10
2 13 16 9
3 14 15 8
4 5 6 7
n=4


1 16 15 14 13
2 17 24 23 12
3 18 25 22 11
4 19 20 21 10
5 6 7 8 9

n=5

在线等...

搜索更多相关主题的帖子: 正方形 轮转 编写 输出 
2007-04-16 15:09
spider1987
Rank: 1
等 级:新手上路
帖 子:172
专家分:0
注 册:2007-2-18
收藏
得分:0 
你不是已经发帖问过了。。。。干嘛又发一个啊
2007-04-16 15:11
chaogede
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-4-15
收藏
得分:0 
没解答出来啊..不好意思 谁能把具体的运行代码发来学习下?
2007-04-16 15:59
I喜欢c
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:64
帖 子:1749
专家分:0
注 册:2007-3-2
收藏
得分:0 
http://bbs.bc-cn.net/viewthread.php?tid=129818

LZ ,你可以参考下这个程序~``
写的不错..
虽然跟你要求有点出入~``
但基本一样.
希望你能自己多思考思考....

 我是指针,却丢失了目标地址!          我是循环,却缺少了结束条件!      我是函数,却没有人来调用!   
2007-04-16 16:32
crackerwang
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:833
专家分:0
注 册:2007-2-14
收藏
得分:0 

没有找到下标的规律所以写的很长
#include<stdio.h>
void main()
{
int a[50][50];
int i,n,k,l;
scanf("%d",&n);
for(i=0;i<50;i++)
{
for(k=0;k<50;k++)
a[i][k]=0;
}
k=l=0;
i=1;
while(i<=n*n)
{
while(l<n&&a[l][k]==0)
{
a[l++][k]=i;
i++;
}
l--;
k++;
while(k<n&&a[l][k]==0)
{
a[l][k++]=i;
i++;
}
k--;
l--;
while(l>=0&&a[l][k]==0)
{
a[l--][k]=i;
i++;
}
l++;
k--;
while(k>=0&&a[l][k]==0)
{
a[l][k--]=i;
i++;
}
k++;
l++;
}
for(i=0;i<n;i++)
{
for(k=0;k<n;k++)
printf("%5d",a[i][k]);
printf("\n");
}
}


2007-04-16 18:25
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
#include<stdio.h>
#define N 14
int main(void)
{
int i=0,j=0,a[N][N]={1},k,flag=1;
for(k=1;k<N*N;k++)
{
switch(flag)
{
case 1:
i++;break;
case 2:
j++;break;
case 3:
i--;break;
case 4:
j--;break;
}
if(i>=N)
{
flag=2;
i--;
j++;
}
if(j>=N)
{
flag=3;
j--;
i--;
}
if(i<0)
{
flag=4;
i++;
j--;
}
if(j<0)
{
flag=1;
j++;
i++;
}
if(a[i][j]!=0)
{
switch(flag)
{
case 1:
i--;j++;flag++;break;
case 2:
j--;i--;flag++;break;
case 3:
i++;j--;flag++;break;
case 4:
j++;i++;flag=1;break;
}
}
a[i][j]=k+1;
}

for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%5d",a[i][j]);
printf("\n\n");
}
return 0;
}

雁无留踪之意,水无取影之心
2007-04-16 19:38
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
这个程序好象是书上例题,楼上给的答案好象就是书上得答案.

学习需要安静。。海盗要重新来过。。
2007-04-17 08:47
guosheng1987
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-4-16
收藏
得分:0 
怎么又发一遍啊汗,
2007-04-17 13:22
快速回复:[求助]编写一个程序,要求输出字轮转组成一正方形,想了半天没想出来.
数据加载中...
 
   



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

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