回复 7楼 邓士林
应该在winTC下编译!也只能在winTC,其他不认识far,网上说是这是个淘汰的东西了。呵呵
2013-04-06 09:25
程序代码:void ttail() /*it is just used at the czi() */
{
char far* k;
int x_c,y_c;
snake *s=(snake *)malloc(sizeof(snake));
s->qian=tail;
s->hou=NULL;
tail->hou=s;
x_c=tail->x-tail->qian->x;
y_c=tail->y-tail->qian->y;
if(x_c==0)
{
if(game[tail->x][tail->y+y_c]!=1)
{
game[tail->x][tail->y+y_c]=1;
s->x=tail->x;
s->y=tail->y+y_c;
}
else if(game[++(tail->x)][tail->y]!=1)
{
game[++(tail->x)][tail->y]=1;
s->x=++(tail->x);
s->y=tail->y;
}
else
{
game[--(tail->x)][tail->y]=1;
s->x=--(tail->x);
s->y=tail->y;
}
}
if(y_c==0)
{
if(game[tail->x+x_c][tail->y]!=1)
{
game[tail->x+x_c][tail->y]=1;
s->x=tail->x+x_c;
s->y=tail->y;
}
else if(game[tail->x][++(tail->y)]!=1)
{
game[tail->x][++(tail->y)]=1;
s->x=tail->x;
s->y=++(tail->y);
}
else
{
game[tail->x][--(tail->y)]=1;
s->x=tail->x;
s->y=--(tail->y);
}
}
tail=s;
/*...................130328am......................start*/
k=pyljsuan(jdzhi,tail->x,tail->y);
*k='#';
/*...................130328am......................stop*/
}

2013-04-06 18:03
;当时想的其实主要是尽可能多的少移步,这样执行步数会少很多,效率会高,还有一个最重要的原因是因为我刚作的时候用的是printf(),在一个统一的打印函数里每次刷一次屏,闪的厉害,所以想着越少移动越不闪;
2013-04-07 10:19
2013-04-07 12:41
2013-04-07 20:19

2013-04-07 20:39
2013-04-07 23:05
2013-04-08 11:51
2013-04-08 21:04
2013-04-09 17:08