用C實現貪吃蛇,看看你的C學得怎樣?(二)

2021-10-02 10:31:26 字數 2077 閱讀 4103

本次專案的任務清單暫定如下:

1.建立地圖和起始介面(已完成)

2.建立蛇,食物、超級食物投放

3.通過鍵盤控制蛇的移動

4.基本功能(蛇吃食物,蛇的增長等)

5.判斷遊戲是否結束

6.計算遊戲時長

7.加入最高紀錄功能

8.遊戲等級進度

9.遊戲重新開始

//定義標頭檔案

#include

#include

#include

#include

#include

//巨集定義宣告

#define x 23

//定義地圖大小

#define y 50

char map[x]

[y];

//地圖陣列

int s[x*y][2

];//蛇身座標陣列

int slength;

//蛇的長度

//定義主函式

intmain()

}//定義函式

void

init()

//程式開始時的初始化操作

;setconsolecursorinfo

(getstdhandle

(std_output_handle)

,&cursor_info)

;//隱藏關標

int i, j;

for(i =

0; i)for

(j =

0; j) slength =4;

//讓蛇的最初長度為4

s[0][

0]= x /2;

s[0][

1]= y /2;

//給蛇頭座標賦值

for(i =

1; i<

4; i++)}

void

gotoxy

(int i,

int j)

//移動游標

;setconsolecursorposition

(getstdhandle

(std_output_handle)

, position);}

void

draw_map()

//建立地圖

printf

("\n");

//別忘了換行}}

void

menu()

//初始選單介面

intcheck

(int ii,

int jj)

//判斷這個點能不能放食物,可以放返回1,不能放返回0

if(ii ==

0|| ii == x -

1|| jj ==

0|| jj == y -1)

//如果在邊界上面,返回0

return0;

if(map[ii]

[jj]==-

1)//若該點有食物,則不生成超級食物

return0;

return1;

//最後篩選 過後的是符合條件的點

}void

food()

//生成食物

while

(check

(i, j)==0

);//生成點直到滿足條件

map[i]

[j]=-1

;//標記為食物

gotoxy

(i, j)

;printf

("*");

//畫出食物

}void

s_food()

//生成超級食物

while

(check

(i, j)==0

);map[i]

[j]=2;

gotoxy

(i, j)

;printf

("$");

}void

draw_snake()

//畫蛇

}

下一次的部落格就讓我們構建的蛇可以動起來,繼續加油!奧力給!

c 實現貪吃蛇

include include include include include include include include include word square color 7 義方向 define key up 72 define key down 80 define key left 75...

貪吃蛇 c 實現

週末無聊,嘗試寫了下貪吃蛇。先上 include include include include include includeusing namespace std define up 72 define down 80 define left 75 define right 77 struct ...

C 實現貪吃蛇

vs 2015 easyx 蛇能上下左右移動 蛇能吃食物 能判斷蛇的死亡 蛇的長度,每節蛇的座標,蛇移動的方向 蛇初始化,移動,改變方向,吃食物,畫蛇,蛇是否死亡 食物的座標,食物是否被吃掉 初始化食物,新的食物,畫食物 因為蛇吃食物時需要知道食物的座標,所以需要獲得食物座標的方法 因為蛇吃食物後需...