学生课程设计报告
一、 课程设计内容
贪吃蛇小游戏程序设计
(贪吃蛇游戏是一个经典小游戏,一条蛇在封闭围墙里,围墙里随机出现一个食物,通过按键盘四个光标键控制蛇向上下左右四个方向移动,蛇头撞倒食物,则食物被吃掉,蛇身体长一节,同时记10分,接着又出现食物,等待蛇来吃,如果蛇在移动中身体交叉蛇头撞倒自己身体则游戏结束。)
二、 技术路线
使用VC++6.0作为开发环境,
采用控制台的形式完成整个游戏的开发,没有用到MFC。
加入了pcc32.h的头文件及库文件,用于对控制台打印效果的控制。
同时也加入了PlaySound()函数,实现了对菜单选择,游戏开始,游戏结束的音效控制。 游戏栏和输出栏的同时打印,数据的更新打印效果,没有采用双线程的方法实现。 接收用户键盘输入信息,实现游戏暂停,重新开始,菜单选择和进入菜单。
三、 设计与实现
1.游戏基本功能:
游戏有开始菜单界面,并有开始游戏,游戏帮助,关于游戏,退出游戏四个选项 游戏初始化后,一条蛇在密闭的围墙内,在围墙内随机出现一个食物, 通过按键盘上的四个方向键控制蛇移动,
蛇在移动过程中撞到墙壁将不会死亡,而是穿过围墙继续行进, 但是如果蛇身体交叉蛇头撞到自己的身体,则游戏结束。 同时,游戏过程中可暂停游戏,并有积分系统, 且积分每满一定值,蛇的运行速度也会逐步增加。
2.函数定义和声明
(1)头文件
#include
#define ESC 27
#define SPACE 32 //空格
#define ENTER 13
//回车
(2)函数声明
void GamePrint(); //游戏开始画面函数
void Gameinit(); //游戏初始化函数
void Sweep_Screem();
//清屏函数
void Gotoxy(int , int); //光标移动函数
void Hid_Cursor(); //光标隐藏函数
void Snake_Move(); //蛇运动函数
int Create_Food(); //食物产生函数
void Pwall(); //画墙函数
void Key(); //键盘操作和处理函数 void Hit_Wall(); //判断是否撞墙
void Eat_Itself(); //判断是否咬到自己
void Whether_Eat(); //判断蛇是否吃到食物 void GameRun(); //游戏运行函数
void SurFace();
//开始菜单界面
void GameOver(); //游戏结束判断函数
void Pause(); //游戏暂停函数 void MyCount1();
//统计边栏,用来做提示 void MyCount2(); //统计边栏,用来做一些统计 void Menu( int ); //开始界面
void Inti_Data(); //初始化数据
(3)变量声明
int X, Y; //食物坐标
int Map[79][24]={{0}}; //地图尺寸,其实有食物记为1 int over = 0; //用来标记游戏结束
int score = 0; //记录分数
int speed = 130; //记录速度 int ColoArray[15]=
{15,1,2,3,4,5,6,7,8,9,10,11,12,13,14};
//自己定义的用来控制颜色的数组 int length = 3; //初始化蛇的长度为3
int Key_Menu; //开始菜单界面用的零时按键
c语言贪吃蛇小游戏程序课程设计



