c语言方阵编程,C语言编程蛇形方阵问题

2011-02-22 回答

题目要求是输入什么?  (即安什么便准来定义方阵的边长?)

追问:

只是要求打印如下方阵

追答:

#include

#include

void right(int i,int j,int n);    //向右输入

void down(int i,int j,int n);    //向下输入

void left(int i,int j,int n);    //向左输入

void up(int i,int j,int n);        //向上输入

void display();                    //输出

int num[100][100];

int k=0;//圈数

int q;//宽度

void main()

{

int n;//宽度

int i,j;//循环

/*初始化*/

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

{

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

{

num[i][j] = 0;

}

}

printf("输入方阵宽度(1~99)");

scanf("%d",&n);

k=n;

if(n==1)

{

printf("1\n");

exit(1);

}

i=0;j=0;

num[i][j] = 1;

right(i,j+1,n);

}

void right(int i,int j,int n)        //向右输入

{

for(q=1;q

{

num[i][j] = num[i][j-1]+1;

q++;

}

down(i+1,j-1,n);

}

void down(int i,int j,int n)        //向下输入

{

for(q=1;q

{

num[i][j] = num[i-1][j]+1;

q++;

}

left(i-1,j-1,n);

}

void left(int i,int j,int n)        //向左输入

{

for(q=1;q

{

num[i][j] = num[i][j+1]+1;

q++;

}

up(i-1,j+1,n);

}

void up(int i,int j,int n)            //向上输入

{

if(n==2)//最内圈宽度为2

{

display();//输出

}

for(q=1;q

{

num[i][j] = num[i+1][j]+1;

q++;

}

num[i+1][j+1] = num[i+1][j]+1;//向内一圈的第一个数赋值

n=n-2;

if(n==1)//最内圈宽度为1

{

display();//输出

}

right(i+1,j+2,n);

}

void display()                        //输出

{

for(int i=0;i

{

for(int j=0;j

{

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

}

printf("\n");

}

exit(1);

}

追问:

Linking...

LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16

Debug/a.exe : fatal error LNK1120: 1 unresolved externals

Error executing link.exe.

编译没问题,可是一运行就出现两个错误了

追答:

- -|||   你是啥编译器?

追问:

VC++6.0

追答:

6721e9515d9a8f2923f2a8f4f9c35712.png  能运行 你重启VC试试

追问:

还是这两个错误啊,我试过好几台电脑了……是不是新建有问题?

我选的WIN32 application然后选的C++source file

追答:

- -||| 你直接在桌面上键个.cpp的文件 打开就好 不用那么烦的

追问:

我对我无语了,怎么也运行不出来,悲剧了,还是采纳吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值