貪食蛇程式

2021-06-21 21:48:46 字數 2143 閱讀 7910

#define n 200

#include #include #include #define left 0x4b00

#define right 0x4d00

#define down 0x5000

#define up 0x4800

#define esc 0x011b

int i,key;

int score=0;/*得分*/

int gamespeed=50000;/*遊戲速度自己調整*/

struct food

food;/*食物的結構體*/

struct snake

snake;

void init(void);/*圖形驅動*/

void close(void);/*圖形結束*/

void drawk(void);/*開始畫面*/

void gameover(void);/*結束遊戲*/

void gameplay(void);/*玩遊戲具體過程*/

void prscore(void);/*輸出成績*/

/*主函式*/

void main(void)

/*圖形驅動*/

void init(void)

/*開始畫面,左上角座標為(50,40),右下角座標為(610,460)的圍牆*/

void drawk(void)

for(i=40;i<=450;i+=10) }

/*玩遊戲具體過程*/

void gameplay(void)

if(food.yes==0)/*畫面上有食物了就要顯示*/

for(i=snake.node-1;i>0;i--)/*蛇的每個環節往前移動,也就是貪吃蛇的關鍵演算法*/

/*1,2,3,4表示右,左,上,下四個方向,通過這個判斷來移動蛇頭*/

switch(snake.direction)

for(i=3;i595||snake.y[0]<55||

snake.y[0]>455)/*蛇是否撞到牆壁*/

if(snake.life==1)/*以上兩種判斷以後,如果蛇死就跳出內迴圈,重新開始*/

break;

if(snake.x[0]==food.x&&snake.y[0]==food.y)/*吃到食物以後*/

setcolor(4);/*畫出蛇*/

for(i=0;irectangle(snake.x[i],snake.y[i],snake.x[i]+10,

snake.y[i]-10);

delay(gamespeed);

setcolor(0);/*用黑色去除蛇的的最後一節*/

rectangle(snake.x[snake.node-1],snake.y[snake.node-1],

snake.x[snake.node-1]+10,snake.y[snake.node-1]-10);

} /*endwhile(!kbhit)*/

if(snake.life==1)/*如果蛇死就跳出迴圈*/

break;

key=bioskey(0);/*接收按鍵*/

if(key==esc)/*按esc鍵退出*/

break;

else

if(key==up&&snake.direction!=4)

/*判斷是否往相反的方向移動*/

snake.direction=3;

else

if(key==right&&snake.direction!=2)

snake.direction=1;

else

if(key==left&&snake.direction!=1)

snake.direction=2;

else

if(key==down&&snake.direction!=3)

snake.direction=4;

}/*endwhile(1)*/

}/*遊戲結束*/

void gameover(void)

/*輸出成績*/

void prscore(void)

/*圖形結束*/

void close(void)

貪食蛇的程式

無聊,分析了乙個用c語言寫的貪食蛇的程式。寫的非常簡練,就是函式的名字起得不是很好。include include define kuan 20 地圖的大小 int iz kuan kuan 地圖 struct jiedian 蛇的結點位置,使用鍊錶結構來儲存蛇身上各結點的位置 point ptsh...

貪食蛇設計

為什麼叫能走蛇 當我剛知道自己要寫一條這樣的蛇時,我的心情是十分複雜的,之所以叫這個名字,是因為這條蛇只有乙個功能,即聽從玩家的命令,在迷宮內四處走動。怎麼寫出能走蛇 那這條靈活 其實很笨拙 的蛇是如何誕生出世的呢?先寫乙個總控偽 出來,採用自頂向下的思想,一步一步解決具體檔案。頭部如下 一點小總結...

小遊戲,貪食蛇

include include include include struct coor struct snake handle hconsole getstdhandle std output handle 獲取標準輸出控制代碼 int food x,food y 食物座標 int score 0 ...