admin管理员组文章数量:1637175
一、贪吃蛇小游戏简介:
用上下左右控制蛇的方向,寻找吃的东西,每吃一口就能得到一定的积分,而且蛇的身子会越吃越长,身子越长玩的难度就越大,不能碰墙,也不能咬到自己的身体,等到了一定的分数,就能过关。
二、函数框架
三、数据结构
typedef struct Snake
{
size_t x; //行
size_t y; //列
struct Snake* next;
}Snake, *pSnake;
定义蛇的结构体,利用单链表来表示蛇,每个结点为蛇身体的一部分。
四、代码实现(vs2010 c语言)
1.Snake.h
#ifndef __SNAKE_H__
#define __SNAKE_H__
#include
#include
#include
#include
#include
#include
//标识地图大小
#define ROW_MAP 10 //地图的行
#define COL_MAP 20 //地图的列
#define SUCCESS_SCORE 10//通关分数
enum Direction //蛇行走的方向
{
R, //右
L, //左
U, //上
D //下
}Direction;
enum State
{
ERROR_SELF, //咬到自己
ERROR_WALL, //撞到墙
NORMAL, //正常状态
SUCCESS //通关
}State;
typedef struct Snake
{
size_t x; //行
size_t y; //列
struct Snake* next;
}Snake, *pSnake;
void StartGame();
void RunGame();
void EndGame();
#endif
2.Snake.c
#include "Snake.h"
pSnake head = NULL; //定义蛇头指针
pSnake Food = NULL; //定义食物指针
int sleeptime = 500;//间隔时间,用来控制速度
int Score = 0; //总分
int everyScore = 1; //每步得分
//定义游戏中用到的符号
const char food = '#';
const char snake = '*';
void Pos(int x, int y) //控制输出光标
{
COORD pos; //pos为结构体
pos.X = x; //控制列
pos.Y = y; //控制行
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);//读取标准输出句柄来控制光标为pos
}
void Face()
{
system("color 0C");
printf("*******************************************************\n");
printf("* Welcome to Snake Game! *\n");
printf("* *\n");
printf("* ->开始游戏请按 enter键 *\n");
printf("* ->退出游戏请按 esc键 *\n");
printf("*
版权声明:本文标题:c语言小游戏代码大全300行,C语言贪吃蛇经典小游戏 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1729246700a1192210.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论