輸入標頭檔案,設定函式,其中snakemove()是實現蛇運動的函式,put_food()是隨機放置金幣的函式,printmap()是輸出影象的函式, x、y記錄蛇尾的座標,snakex和snakey記錄蛇的初始座標。
#include
#include
#include
#include
#define snake_max_length 100
#define snake_head 'h'
#define snake_body 'x'
#define blank_cell ' '
#define wall_cell '*'
#define food '$'
void snakemove(char ch, int snakex, int snakey);
void put_money(void);
void printmap(void);
void put_food(void);
int x, y;
輸出影象和放置食物的函式如下:
void put_food()
map[y][x] = food;
}void printmap()
}
要實現蛇的移動和增長,蛇每移動一次,讓蛇頭的座標做相應的變化,它的每一節身體的座標變為前一節身體的座標,蛇尾的初始座標的字元清零。若蛇頭的座標變化後恰好為食物的座標,則蛇的身長加一,蛇尾的初始座標的字元不清零。
具體實現方法如下:
void snakemove(char ch,int snakex, int snakey)
snakex[snakelength - 1]--;
break;
case
's': case
's':
for(i = 0; i < snakelength - 1; i++)
snakey[snakelength - 1] ++;
break;
case
'd': case
'd':
for(i = 0; i < snakelength - 1; i++)
snakex[snakelength - 1]++;
break;
case
'w': case
'w':
for(i = 0; i < snakelength - 1; i++)
snakey[snakelength - 1]--;
break;
default:
return ;
}}int main()
snakey[0] = y;
snakex[0] = x;
snakelength ++;
put_food();
}map[snakey[snakelength - 1]][snakex[snakelength - 1]] = snake_head;
system("cls");
printmap();
}getchar();
}
簡單的貪吃蛇小遊戲就這樣做好了。
用c語言寫的貪吃蛇
用c編寫的貪吃蛇程式 需求分析 貪吃蛇是一款經典的小遊戲,在遊戲中,玩家操作一條小蛇不斷的吃豆,同時要避免蛇頭與身體部分接觸。蛇每吃乙個豆,身體就會長大一節。源程式 include include system cls 用到 include include include sleep函式 inclu...
C語言 貪吃蛇遊戲
相信每個人都接觸過貪吃蛇遊戲,而對於學習c語言的同學來說,一開始是不是覺得c語言寫不出什麼東西來呢?那麼,貪吃蛇應該是第一步,開始了解一些模組化的知識,一些物件導向的思想,一些小專案的編寫。效果 通過 wasd 移動蛇,蛇能夠吃隨機產生的食物,並且變長。基本實現 用兩個陣列snakex,snakey...
C語言 貪吃蛇遊戲
該遊戲不依賴tc環境,任何第三方庫,可以在vc 6.0 vs c free等常見ide中編譯通過。設計貪吃蛇遊戲的主要目的是讓大家夯實c語言基礎,訓練程式設計思維,培養解決問題的思路,領略多姿多彩的c語言。遊戲開始後,會在中間位置出現一條只有三個節點的貪吃蛇,並隨機出現乙個食物,如下圖所示 圖1 遊...