#include
#include
#include
#include
#include
//獲取鍵盤輸入
#define maplength 40
#define mapwidth 20
#define maxsiae 50
//函式宣告
void gotoxy (
int x,
int y)
;//移動游標
void drawmap ();
//初始化地圖(牆,食物,蛇)
void
createvenom()
;//加毒液
void
clickcontrol()
;//鍵盤控制+移動蛇
void
recreatefood()
;//食物被吃後重新隨機生成食物
void
recreatevenom()
;int
snakestatus()
;//判斷蛇的狀態
//全域性變數
int key =
'w';
//初始化移動方向
int changeflag =1;
//蛇的變化標記
int score =
000;
//蛇的結構(陣列實現)
struct snake
snake;
//食物結構
struct food
food;
struct venom
venom;
int main ()}
gotoxy
(maplength/
2,mapwidth/2)
;printf
("game over!\n");
system
("pause");
return0;
}//初始化地圖
void
drawmap()
//列印左右邊框
for(i =
0;i <= mapwidth;i++
)//食物
srand((
unsigned
)time
(null))
; food.x =
rand()
%(maplength-2)
+1; food.y =
rand()
%(mapwidth-2)
+1;gotoxy
(food.x,food.y)
;printf
("$");
//蛇 snake.length =5;
//到下面只有length-1節,不知道為什麼
snake.speed =
200;
//定義延遲時間
snake.x[0]
= maplength/2;
snake.y[0]
= mapwidth/2;
gotoxy
(snake.x[0]
,snake.y[0]
);printf
("@");
for(
int j =
1;j <= snake.length -
1;j++)}
//毒液
void
createvenom()
//鍵盤控制+移動蛇
void
clickcontrol()
//擦除最後一節
if(changeflag)
//剩下的節數
for(
int i = snake.length -
1;i >
0;i--
)//移動方向(蛇頭)
switch
(key)
gotoxy
(snake.x[0]
,snake.y[0]
);//列印蛇頭
sleep
(snake.speed)
;//延遲列印
printf
("@");
gotoxy(4
,4);
}//食物被吃後重新隨機生成食物
void
recreatefood()
}if(flag)
}gotoxy
(food.x,food.y)
;printf
("$");
snake.length++
; score++
;gotoxy
(maplength +
1,mapwidth +1)
;printf
("你的得分:%d"
,score);}
}//毒液被吃後重新隨機生成毒液
void
recreatevenom()
}if(flag)
}gotoxy
(venom.a,venom.b)
;printf
("*");
gotoxy
(snake.x[snake.length -1]
,snake.y[snake.length -1]
);snake.length--
;printf
(" ");
score--
;gotoxy
(maplength +
1,mapwidth +1)
;printf
("你的得分:%d"
,score);}
}//判斷蛇的狀態
intsnakestatus()
return1;
}//游標跳轉
void gotoxy (
int x,
int y)
C 貪吃蛇二
小菜學習winform 一 貪吃蛇 說到oo可能一說一大堆,這裡面小菜只是簡單的把貪吃蛇抽象出來,先來說蛇,具有的屬性和行為,屬性比如蛇的長度 蛇的寬度 蛇的行動方向等 行為比如是否吃到食物 是否撞牆等,那我們可以抽象乙個蛇的類,這樣實現 1 using system 2using system.c...
C 貪吃蛇設計
class map enum char map row col 地圖 map void drawmap 繪製地圖 bool isvaildpoint int x,int y 1.利用列舉來定義常量,在類外部可以通過作用域解析來獲取列舉常量,便於所有類的交流.2.通過二維陣列儲存地圖,在構造的時候讀取...
C語言貪吃蛇
include include include include include include define screen width 40 遊戲螢幕寬度 define screen length 15 遊戲螢幕長度 define start x 16 螢幕起始x座標 define start y ...