c语言怎么在编码时改变颜色,怎么给贪吃蛇换一个颜色 怎么改 代码如下
該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓
#include
#include
#include //windows編程頭文件
#include
#include //控制臺(tái)輸入輸出頭文件
#ifndef __cplusplus
typedef char bool;
#define false 0
#define true 1
#endif
//將光標(biāo)移動(dòng)到控制臺(tái)的(x,y)坐標(biāo)點(diǎn)處
void gotoxy(int x, int y)
{
COORD coord;
coord.X = x;
coord.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}
#define SNAKESIZE 100//蛇的身體最大節(jié)數(shù)
#define MAPWIDTH 78//寬度
#define MAPHEIGHT 24//高度
//食物的坐標(biāo)
struct {
int x;
int y;
}food;
//蛇的相關(guān)屬性
struct {
int speed;//蛇移動(dòng)的速度
int len;//蛇的長(zhǎng)度
int x[SNAKESIZE];//組成蛇身的每一個(gè)小方塊中x的坐標(biāo)
int y[SNAKESIZE];//組成蛇身的每一個(gè)小方塊中y的坐標(biāo)
}snake;
//繪制游戲邊框
void drawMap();
//隨機(jī)生成食物
void createFood();
//按鍵操作
void keyDown();
//蛇的狀態(tài)
bool snakeStatus();
//從控制臺(tái)移動(dòng)光標(biāo)
void gotoxy(int x, int y);
int key = 72;//表示蛇移動(dòng)的方向,72為按下“↑”所代表的數(shù)字
//用來(lái)判斷蛇是否吃掉了食物,這一步很重要,涉及到是否會(huì)有蛇身移動(dòng)的效果以及蛇身增長(zhǎng)的效果
int changeFlag = 0;
int sorce = 0;//記錄玩家的得分
int i;
void drawMap()
{
//打印上下邊框
for (i = 0; i <= MAPWIDTH; i += 2)//i+=2是因?yàn)闄M向占用的是兩個(gè)位置
{
//將光標(biāo)移動(dòng)依次到(i,0)處打印上邊框
gotoxy(i, 0);
printf("■");
//將光標(biāo)移動(dòng)依次到(i,MAPHEIGHT)處打印下邊框
gotoxy(i, MAPHEIGHT);
printf("■");
}
//打印左右邊框
for (i = 1; i < MAPHEIGHT; i++)
{
//將光標(biāo)移動(dòng)依次到(0,i)處打印左邊框
gotoxy(0, i);
printf("■");
//將光標(biāo)移動(dòng)依次到(MAPWIDTH, i)處打印左邊框
gotoxy(MAPWIDTH, i);
printf("■");
}
//隨機(jī)生成初試食物
while (1)
{
srand((unsigned int)time(NULL));
food.x = rand() % (MAPWIDTH - 4) + 2;
food.y = rand() % (MAPHEIGHT - 2) + 1;
//生成的食物橫坐標(biāo)的奇偶必須和初試時(shí)蛇頭所在坐標(biāo)的奇偶一致,因?yàn)橐粋€(gè)字符占兩個(gè)字節(jié)位置,若不一致
//會(huì)導(dǎo)致吃食物的時(shí)候只吃到一半
if (food.x % 2 == 0)
break;
}
//將光標(biāo)移到食物的坐標(biāo)處打印食物
gotoxy(food.x, food.y);
printf("*");
//初始化蛇的屬性
網(wǎng)頁(yè)鏈接= 3;
網(wǎng)頁(yè)鏈接= 200;
//在屏幕中間生成蛇頭
snake.x[0] = MAPWIDTH / 2 + 1;//x坐標(biāo)為偶數(shù)
snake.y[0] = MAPHEIGHT / 2;
//打印蛇頭
gotoxy(snake.x[0], snake.y[0]);
printf("■");
//生成初試的蛇身
for (i = 1; i < snake.len; i++)
{
//蛇身的打印,縱坐標(biāo)不變,橫坐標(biāo)為上一節(jié)蛇身的坐標(biāo)值+2
snake.x[i] = snake.x[i - 1] + 2;
snake.y[i] = snake.y[i - 1];
gotoxy(snake.x[i], snake.y[i]);
printf("■");
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的c语言怎么在编码时改变颜色,怎么给贪吃蛇换一个颜色 怎么改 代码如下的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: c语言如何发现错误在哪里,二个C语言例子
- 下一篇: python实例化次数怎么算,我需要一个