纯c语言贪吃蛇,纯C语言贪吃蛇 求助

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

#include

//#define N 6

int i,j;

int level;

int score=0;

int t=0;

char map[16][21]={"====================",

"=#####@ =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"= =",

"===================="};

struct Food

{

int x;/*食物的横坐标*/

int y;/*食物的纵坐标*/

bool yes;/*判断是否要出现食物的变量*/

}food;/*食物的结构体*/

struct Snake

{

int x[0];//蛇的坐标;N表示蛇的第几节 ,头部为第0节

int y[0];

int node;/*蛇的节数,第0节表示头*/

int life;/* 蛇的生命,0活着,1死亡*/

}snake;/*蛇的结构体*/ void putfood(int i,int j)//i,j为蛇头坐标

{

//生成随机坐标,当随机坐标为蛇身或者蛇头或墙时重新生成

int x=0,y=0;

food.yes=0;

srand(time(NULL)); //初始化随机数种子

while ((map[y][x]=='#')||(map[y][x]=='@')||((x==i)&&(y==j)))

{

x=rand()%18+1; //产生0-9的数,如果要产生0-10,用rand()%10+1

y=rand()%13+1;

}

map[y][x]='O';

return;

}

void output()//移动之后重新铺地图

{

int i,j;

system("cls"); //每移动一次清屏一次并重铺地图

//printf("Up:w Down:s Left:a Right:d\n");

for (i=0;i<16;i++)//行控制

{

for (j=0;j<21;j++)//列控制

{

printf("%c",map[i][j]);//显示新地图

}

printf("\n");

}

printf("level:%d score:%d\n",level,score);

}

int GameOver()

{

snake.life=1; //当life=1时程序结束.

printf("Game Over!!!\n");

printf("your score is %d.\n",score);//输出游戏信息

return 0;

}

void chooselevel()

{

printf("请输入游戏等级 1 2 3 4 5 \n");

scanf("%d",&level);

t=6000/level;//游戏难度

}

void getscore()

{

score+=10;

if(score%100==0)

{

if(level==5) ;

else

{

printf("level up!!\n");

level+1;

}

}

}

void turn_up() //向上走的函数

{

int i;

if ((snake.y[0]-1==0)||(snake.x[0]==0)||(map[snake.y[0]-1][snake.x[0]]=='#')||(map[snake.y[0]-1][snake.x[0]]=='='))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值