介紹:
比普通的貪吃蛇遊戲增加了 蛇的加速的,蛇節數越多速度越大。
增加了柱子,隨機出現在地圖裡,個數也隨機。
採用跳轉列印方法,不會閃屏!不會閃屏!不會閃屏!
玩到後面會很刺激哦
**:
/*
1、資料設計
2、模組化設計
3、實現過程
*/#include
#include
#include
//游標設計api
#include
//食物隨機
#include
//按鍵監控
#define mapwidth 60
//地圖寬x
#define mapheight 25
//地圖高y
#define snakesize 100
//蛇的最大節數
//資料設計
/// 食物的結構體
struct
food;
// 蛇的結構體
struct
snake;
// 柱子的結構體
struct
column;
//全域性變數
int key =
'w';
//初始化移動方向
int changefalg =0;
//蛇的變化標記
int score =0;
//得分
//模組化設計
/// 1、繪製地圖 ■ ⑨ ★
void
drawmap()
;void
createfood()
;void
keydown()
;int
snakestatus()
;void
gotoxy
(int
,int);
void
drawmap()
上下邊框
for(
int i =
0; i <= mapwidth; i +=2
)//2、畫蛇
確定蛇的屬性
snake.len =3;
snake.speed =
330;
//開始蛇頭在螢幕**
snake.x[0]
= mapwidth /2;
snake.y[0]
= mapheight /2;
畫蛇gotoxy
(snake.x[0]
, snake.y[0]
);printf
("■");
for(
int i =
1; i < snake.len; i++
)//3、畫食物
確定座標
int falg =1;
while
(falg)}if
(food.x %2!=
0)}畫出來即可
gotoxy
(food.x, food.y)
;printf
("⑨");
gotoxy
(mapwidth +2,
0);printf
("得分:%d"
, score)
;//4畫柱子
falg =1;
column.len =
rand()
%6+5
;while
(falg)
for(
int j =
0; j < snake.len; j++)}
for(
int j = i +
1; j < column.len; j++)}
if(column.x[i]%2
!=0)}
if(falg ==0)
}}}// 2、重新整理食物
void
createfood()
}for
(int i =
0; i < column.len; i++)}
//x座標必須為偶數
if(food.x %2!=
0)}gotoxy
(food.x, food.y)
;printf
("⑨");
snake.len++
; changefalg =1;
//蛇的標記
score++
;gotoxy
(mapwidth +2,
0);printf
("得分:%d"
, score);}
}// 3、按鍵操作
void
keydown()
else}}
if(!changefalg)
//後面的蛇身往前移
for(
int i = snake.len -
1; i >
0; i--
)//移動方向的處理
switch
(key)
gotoxy
(snake.x[0]
, snake.y[0]
);printf
("■");
changefalg =0;
gotoxy
(mapwidth +10,
0);}
// 4、蛇的狀態: 判斷是否結束
intsnakestatus()
for(
int i =
1; i < snake.len; i++)}
for(
int i =
0; i < column.len; i++)}
return1;
}// 5、輔助函式: 游標移動
void
gotoxy
(int x,
int y)
intmain()
sleep
(speed)
;createfood()
; over =
snakestatus()
;}system
("cls");
gotoxy
(mapwidth /
2, mapheight /2)
;printf
("gameover");
system
("pause");
return0;
}
C語言控制台貪吃蛇
貪吃蛇 這個蛇是怎麼變長的.遊戲就是方塊和空格的更新 沒有牆的地方初始化為0,有牆的地方初始化為1,有蛇的地方初始化為2,食物初始化為3 所有的操作都在snakegroup裡面進行 include include include include include include include con...
C 控制台貪吃蛇
軟體實訓作品,現放出個人源 供需要的同學參考 int startx 8 x起點 const int starty 4 y起點 const int rangex 60 x範圍 const int rangey 20 y範圍 const int endx startx rangex x終點 const ...
C 控制台貪吃蛇
大二下的遊戲程式設計第乙個小作業,以此篇記錄一下,感謝李仕老師的循循善誘和同學們的熱情討論。include include include using namespace std define leftborder 3 define topborder 3 bool gameover,died 遊戲...