//这是一个贪吃蛇代码,运行环境VC++6.0

//该程序不需要graphics.h头文件

/*这是一个贪吃蛇代码,运行环境VC++6.0(亲测完美运行)*/

/*该程序在dos系统下运行,不需要graphics.h头文件*/

#include

#include

#include

#include

#include

#include

#define N 21

int apple[3];

char score[3];

char tail[3];

void gotoxy(int x, int y) //输出坐标

{

COORD pos;

pos.X = x;

pos.Y = y;

SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);

}

void color(int b) //颜色函数

{

HANDLE hConsole = GetStdHandle((STD_OUTPUT_HANDLE)) ;

SetConsoleTextAttribute(hConsole,b) ;

}

int Block(char head[2]) //判断出界

{

if ((head[0] < 1) || (head[0] > N) || (head[1] < 1) || (head[1] > N))

return 1;

return 0;

}

int Eat(char snake[2]) //吃了苹果

{

if ((snake[0] == apple[0]) && (snake[1] == apple[1]))

{

apple[0] = apple[1] = apple[2] = 0;

gotoxy(N+44,10);

color(13);

printf("%d",score[0]*10);

color(11);

return 1;

}

return 0;

}

void Draw(char **snake, int len) //蛇移动

{

if (apple[2]) {

gotoxy(apple[1] * 2, apple[0]);

color(12);

printf("●");

color(11);

}

gotoxy(tail[1] * 2, tail[0]);

if (tail[2])

{ color(14);

printf("★");

color(11);

}

else

printf("■");

gotoxy(snake[0][1] * 2, snake[0][0]);

color(14);

printf("★");

color(11);

putchar('\n');

}

char** Move(char **snake, char dirx, int *len) //控制方向

{

int i, full = Eat(snake[0]);

memcpy(tail, snake[(*len)-1], 2);

for (i = (*len) - 1; i > 0; --i)

memcpy(snake[i], snake[i-1], 2);

switch (dirx)

{

case 'w': case 'W': --snake[0][0]; break;

case 's': case 'S': ++snake[0][0]; break;

case 'a': case 'A': --snake[0][1]; break;

case 'd': case 'D': ++snake[0][1]; break;

default: ;

}

if (full)

{

snake = (char **)realloc(snake, sizeof(char *) * ((*len) + 1));

snake[(*len)] = (char *)malloc(sizeof(char) * 2);

memcpy(snake[(*len)], tail, 2);

++(*len);

++score[0];

if(score[3] < 16)

++score[3];

tail[2] = 1;

}

else

tail[2] = 0;

return snake;

}

void init(char plate[N+2][N+2], char ***snake_x, int *len) //初始化

{

int i, j;

char **snake = NULL;

*len = 3;

score[0] = score[3] =3;

snake =

贪吃蛇c语言代码 vc++6.0,贪吃蛇代码-C语言版-VC++6.0相关推荐

  1. 阿里官方Java代码规范标准《阿里巴巴Java开发手册 终极版 v1.3.0》下载

    转载:https://www.cnblogs.com/han-1034683568/p/7680354.html

  2. 三星 j3 android 8.0,三星J3 Pro官方台湾版安卓8.0固件线刷包:BRI-J330GDXS3BSF5

    同样也是来把咱们的这个三星J330G手机的具体的固件包整理一下了,这个固件包也是就原版的线刷包了,具体的系统版本号是BRI-J330GDXS3BSF5,也是多件套形式的固件包了,非常的实用,有需要的用 ...

  3. QQ2018手机版 v7.9.0

    类型:社交聊天 版本:v7.9.0 大小:54.8M 更新:2018/11/21 语言:简体 平台:安卓, 4.0以上 厂商:腾讯 下载地址: QQ2018手机版 v7.9.0(1) QQ2018手机 ...

  4. iOS 版微信 7.0.4 发布:新增朋友圈「最近一个月」可见;中国5G专利占比34%,华为申请数量最多|嘟头条...

    「嘟爷头条」,是嘟嘟精心打造的一个快速了解业界新闻的的板块,抽取一周最新鲜最重要的业界资讯,让你花几分钟就可以时刻紧跟业界潮流. 快讯速知 iOS 版微信 7.0.4 发布:新增朋友圈「最近一个月」可 ...

  5. 阿里巴巴Java开发手册(嵩山版)v1.7.0 及各个历史版本 百度云直接带走 不需要其他操作

    阿里巴巴Java开发手册(嵩山版)v1.7.0 阿里巴巴Java开发手册(泰山版)v1.6.0 阿里巴巴Java开发手册(华山版)v1.5.0 阿里巴巴Java开发手册(详尽版)v1.4.0 阿里巴巴 ...

  6. 用200行C语言代码写出一个贪吃蛇——1.0(基本版)

    1.设计思路 总的来说,贪吃蛇这个小游戏涉及到的东西不多,但是对逻辑思维是比较吃基本功的. 贪吃蛇,显示给我们看的有三部分:蛇.食物.地图边界. 我们可以用一个二维数组来标记这些部分: 例如这里我创建 ...

  7. 99行不用指针 c语言贪食蛇,小白99行C代码编写经典游戏贪吃蛇(多关版本)

    文章目录 前言 一.实现原理 1.地图打印 2.蛇身运动 3.方向键操控 4.四种判定 5.函数工具 二.游戏试玩 1.编译环境 2.源代码 三.代码详解 1.游戏配置部分(第1~31行) 2.游戏主 ...

  8. python贪吃蛇代码课程设计_c语言课程设计之贪吃蛇代码及思路 c语言课程设计报告之贪吃蛇...

    原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/8846529.html 注:本文档需与c语言课程设计之贪吃蛇文档配套使用.c语言实现贪吃蛇代码可 ...

  9. c语言链表贪吃蛇脚本之家,C++控制台实现贪吃蛇游戏

    本文实例为大家分享了C++实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 刚学完了C语言,便尝试的写了贪吃蛇的代码,但是效果不佳,很多的bug,所以,这个学了C++,便重新的写了这个小游戏,用类来 ...

  10. c语言制作贪吃小白入门,小白入门——easyx界面版“贪吃蛇”的C语言实现(详细)...

    小白入门--easyx界面版"贪吃蛇"的C语言实现(详细) 作者:顽石 前言:C语言初学者都是在控制台上开发一些小游戏什么,由于没有界面(比如图片.音乐,不能做出拥有自己风格的程序 ...

最新文章

  1. 为什么用IP无法访问网站,域名可以访问?
  2. RHEL5中配置无线
  3. mail ru android,mail ru app下载
  4. nssl1216-码灵鼠【数学】
  5. [Leedcode][JAVA][第85题][第221题][最大正方形][动态规划]
  6. 怎样在linux系统上安装r,Linux系统之路——如何在CentOS7.2安装R(示例代码)
  7. c++ 将deque部分元素赋值给vector_《STL源码剖析》学习笔记——序列式容器vector
  8. 2017.5.9 寻找道路 思考记录
  9. 《工业控制网络安全技术与实践》一2.2 分布式控制系统
  10. 一文读懂商业智能(BI):企业数据分析的中枢
  11. SpringMVC+idea+maven搭建项目
  12. Python机器学习的一些文档
  13. wpsoffice 安装包_WPS office (安卓、ios) 企业版 软件介绍(附安装包)
  14. hi3798 run linux,EC6108V9(HI3798MV100)刷(linux)ubuntu16.04
  15. 微信公众号、订阅号、服务号区别
  16. python元组定义_python定义元组
  17. ps2改usb接口_PS2键盘接口改USB接口
  18. 万恶的LayoutSubviews
  19. Deepin系统初体验指南:从安装到开发环境配置
  20. 讲解ping中的TTL是什么意思

热门文章

  1. 介绍一款网页翻译插件
  2. python零基础教学plc_Python从基础到开发精修全面学习视频教程
  3. 正负数据如何归一化_数据归一化方法大全
  4. selenium 模拟火狐浏览器
  5. OPPO R9s刷机教程 可解锁线刷包 救砖升级
  6. Mimics 21.0软件学习笔记(一)基本操作
  7. mimics能导出什么格式_mimics教程
  8. 485转4-20mA信号转换0-10v5v电压电流采集模块
  9. CuteEditor 6.0 在线HTML编辑器的领航者
  10. Django 文件下载