📄 c-snake.txt
字号:
贪吃蛇
{printf("I hit myself!");exit(1);}
i ;
if(IE>30)IE=2;
A[i][j]=IE;IE ;
del_tail();
A[tii][tjj]=0;
}
void up()
{
head=0;
if(A[i-1][j]>1&&A[i-1][j]!=99)
{printf("I hit myself!");exit(1);}
i--;
if(IE>30)IE=2;
A[i][j]=IE;IE ;
del_tail();
A[tii][tjj]=0;
http://www.mscto.com
}
void left()
{
head=2;
if(A[i][j-1]>1&&A[i][j-1]!=99)
{printf("I hit myself!");exit(1);}
j--;
if(IE>30)IE=2;
A[i][j]=IE;IE ;
del_tail();
A[tii][tjj]=0;
}
void right()
{
head=3;
if(A[i][j 1]>1&&A[i][j 1]!=99)
{printf("I hit myself!");exit(1);}
j ;
if(IE>30)IE=2;
A[i][j]=IE;IE ;
del_tail();
A[tii][tjj]=0;
}
void test()/*测试是否到达边界*/
{
if(i<0||i>N-1||j<0||j>N-1)
{
printf("出界! Game over.");
exit(1);
}
}
void move()/*当前移动*/
{
switch(head)
{
case 0:up();break;
case 1:down();break;
case 2:left();break;
case 3:right();break;
/*default:printf("方向出错!\n");*/
}
}
int keyboard()
{
/*判断是否有键盘输入
// 有返回值0,1,2,3
// int k=keyboard;
//判断方向是否是有效方向
//无效则什么也不做
//若方向有效则改变head的值*/
int a,key,h;
for(a=0;a<2;a )
if(bioskey(1))break;
key=bioskey(0);
switch (key)
{
/*up*/
case 18432:h=0;break;
/*down*/
case 20480:h=1;break;
/*left*/
case 19200:h=2;break;
/*right*/
case 19712:h=3;break;
/*Esc*/
case 283:printf("You press the Esc key!");exit(1);break;
/*default: h=999 ;*/
}
return h;
}
void add_point()/* 用于产生食物 */
{
while(1){
x=random(100)%N;
y=random(100)%N;
if(A[x][y]==0)break;
}
A[x][y]=99;/*食物的标志是5*/
add=0;/* 加食物标志清0*/
}
void score()
{
http://www.mscto.com
setcolor(9);
settextstyle(3,0,4);
outtextxy(450,40,"Score:");
setcolor(RED);
outtextxy(450,200,"Speed:");
}
void number_char(int x)
{
int a0,a1,a2,a3;
if(x>9999){a[0]='9';a[1]='9';a[2]='9';a[3]='9';}
else {
a0=x/1000;
a[0]=a0 48;
a1=(x-a0*1000)/100;
a[1]=a1 48;
a2=(x-a0*1000-a1*100)/10;
a[2]=a2 48;
a3=(x-a0*1000-a1*100-a2*10);
a[3]=a3 48;
a[4]='\0';
}
}
void snake_get()/*吃到食物时*/
{
if(i==x&&j==y)
{
length ;
A[tii][tjj]=A[ii][jj]-1;/*蛇尾加长*/
ii=tii;jj=tjj;/*蛇尾重新定义*/
add=1;/*食物标志置1*/
setfillstyle(1,BLACK);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -