c语言贪吃蛇游戏程序增加道具,吃了加命或减速

就是董晶老师贪吃蛇游戏程序的思考题

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

#include <Windows.h>

#define HIGH 20 // 游戏画面尺寸

#define WIDTH 30

 

// 全部变量

int moveDirection; // 小蛇移动的方向,上、下、左、右分别用1、2、3、4表示

int food_x,food_y; // 食物的位置

int canvas[HIGH][WIDTH] = { 0 }; // 二位数组存储游戏画布中对应的元素

 // 0为空格,-1为边框#, 1为蛇头@, 大于1的正数为蛇身*

 

void gotoxy(int x, int y) /* 将光标移动到(x,y)位置 */

{

 HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);

 COORD pos;

 pos.X = x;

 pos.Y = y;

 SetConsoleCursorPosition(handle, pos);

}// 替代system("cls")清屏函数

 

/*

·移动小蛇

·第一步扫描数组canvas的所有元素,找到正数元素都加1

·找到最大元素(即蛇尾巴),把其变为0

·找到等于2的元素(即蛇头),根据输出的上下左右方向把对应的另一个像素值设为1(新蛇头)

*/

void moveSnakeByDirection()

{

 int i, j;

 for ( i = 1; i < HIGH - 1; i++ )

  for ( j = 1; j < WIDTH - 1; j++ )

   if ( canvas[i][j] > 0 )

    canvas[i][j]++;

 

 int oldTail_i, oldTail_j, oldHead_i, oldHead_j;

 int max = 0;

 for ( i = 1; i < HIGH - 1; i++ )

  for ( j = 1; j < WIDTH - 1; j++ )

   if ( canvas[i][j] > 0 )

   {

    if ( max < canvas[i][j] )

    {

     max =

这个要根据你的代码加入特效食物,吃了就可以有特效

食物增加两个属性加命或减速,游戏初始初始命1,速度10,吃到食物对属性命或速度进行调整,判断游戏结束的地方加上命的校验和调整。