資源簡(jiǎn)介
本游戲代碼參考《C語言項(xiàng)目開發(fā)全程實(shí)錄(第二版)》第六章。代碼已在Visual C 6.0環(huán)境下編譯測(cè)試通過,可在VC 6.0編譯器中導(dǎo)入工程編譯運(yùn)行查看效果,或者也可以直接運(yùn)行Release或Debug文件夾下的snake.exe文件進(jìn)行游戲。代碼包含大量注釋,每一個(gè)變量,數(shù)據(jù)結(jié)構(gòu),函數(shù)都有文字說明,函數(shù)注釋統(tǒng)一放在函數(shù)開頭以/**/為界,語句注釋以//為始跟隨在語句后,通過大量注釋可以快速方便地理清程序結(jié)構(gòu),添加或修改程序內(nèi)容。本項(xiàng)目使用C語言開發(fā),實(shí)現(xiàn)了貪吃蛇游戲的主要功能,包括鍵盤方向鍵控制蛇前進(jìn)方向,F(xiàn)1/F2加速/減速,空格鍵暫停等,具體可以查看系統(tǒng)內(nèi)的游戲說明。在游戲過程中蛇
代碼片段和文件信息
//?snake.cpp?:?Defines?the?entry?point?for?the?console?application.
#include?“stdafx.h“
/*******頭??文??件*******/
#include //標(biāo)準(zhǔn)輸入輸出函數(shù)庫
#include //用于獲得隨機(jī)數(shù)
#include //控制dos界面
#include //即standard?library標(biāo)志庫頭文件,里面定義了一些宏和通用工具函數(shù)
#include //接收鍵盤輸入輸出
/*******宏??定??義*******/
#define?U?1
#define?D?2
#define?L?3?
#define?R?4????//蛇的狀態(tài),U:上?;D:下;L:左?R:右
/*******定??義??全??局??變??量?*******/
typedef?struct?snake? //蛇身的一個(gè)節(jié)點(diǎn)
{
????int?x; //節(jié)點(diǎn)x坐標(biāo)
????int?y; //節(jié)點(diǎn)y坐標(biāo)
????struct?snake?*next; //蛇身體下一節(jié)點(diǎn)
}snake;
int?score=0;????????????????//總得分
int?add=10; ????????//每次吃食物得分
int?HighScore?=?0; //最高分
int?status; //蛇前進(jìn)狀態(tài)
int?sleeptime=200; //每次運(yùn)行的時(shí)間間隔
snake?*head; //蛇頭指針
snake?*food; //食物指針
snake?*q; //遍歷蛇的時(shí)候用到的指針
int?endgamestatus=0; //游戲結(jié)束的情況,1:撞到墻;2:咬到自己;3:主動(dòng)退出游戲
HANDLE?hOut; //控制臺(tái)句柄
/*******函??數(shù)??聲??明?*******/
void?gotoxy(int?xint?y);???//設(shè)置光標(biāo)位置
int?color(int?c);???????????//更改文字顏色
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件?????225343??2018-12-25?20:28??snake\Debug\snake.exe
?????文件????1148816??2018-12-25?20:28??snake\Debug\snake.ilk
?????文件??????83892??2018-12-25?20:28??snake\Debug\snake.obj
?????文件?????187016??2018-12-25?10:00??snake\Debug\snake.pch
?????文件?????648192??2018-12-25?20:28??snake\Debug\snake.pdb
?????文件???????1687??2018-12-25?10:00??snake\Debug\StdAfx.obj
?????文件?????132096??2018-12-26?18:16??snake\Debug\vc60.idb
?????文件?????233472??2018-12-25?20:28??snake\Debug\vc60.pdb
?????文件???????1202??2018-12-25?10:00??snake\ReadMe.txt
?????文件??????????1??2018-12-25?18:11??snake\Release\save.txt
?????文件??????65536??2018-12-25?20:29??snake\Release\snake.exe
?????文件??????29225??2018-12-25?20:29??snake\Release\snake.obj
?????文件?????187100??2018-12-25?18:08??snake\Release\snake.pch
?????文件????????228??2018-12-25?18:08??snake\Release\StdAfx.obj
?????文件??????41984??2018-12-25?20:29??snake\Release\vc60.idb
?????文件??????????2??2018-12-26?18:17??snake\save.txt
?????文件??????19887??2018-12-25?20:28??snake\snake.cpp
?????文件???????4580??2018-12-25?18:07??snake\snake.dsp
?????文件????????516??2018-12-25?18:07??snake\snake.dsw
?????文件??????50176??2018-12-26?18:17??snake\snake.ncb
?????文件??????53760??2018-12-26?18:17??snake\snake.opt
?????文件????????244??2018-12-26?18:16??snake\snake.plg
?????文件????????292??2018-12-25?10:00??snake\StdAfx.cpp
?????文件????????667??2018-12-25?10:00??snake\StdAfx.h
?????目錄??????????0??2018-12-25?20:28??snake\Debug
?????目錄??????????0??2018-12-25?18:08??snake\Release
?????目錄??????????0??2018-12-26?18:17??snake
-----------?---------??----------?-----??----
??????????????3115914????????????????????27
............此處省略0個(gè)文件信息
評(píng)論
共有 條評(píng)論