贪吃蛇无敌版,可穿墙,英文输入法小写字母wasd操作。

#include<stdio.h>
#include<string.h>
#include<windows.h>
#include<time.h>
#include<conio.h>#define up 'w'
#define down 's'
#define left 'a'
#define right 'd'
#define space 'q'
#define slow 'e'void gotoxy(int x, int y);
int ClickControl();
void moveobject();
void food();
int color(int c);
void border();
void wall();
//srand((unsigned)time(0));int j,i,k,click,length=5;
int _time=100000000;
typedef struct Snake
{int x;int y;struct Snake *next;
}snake;
snake s={15,15};
snake *head;
snake ss[100];main()
{int c;ss[0]=s;snake temp[2];for(i=1;i<length;i++){ss[i].x=ss[0].x-2*i;ss[i].y=ss[0].y;}head=ss;while(1){wall();food();temp[0]=ss[0];ClickControl();moveobject();border();for(i=1;i<length;i++){                                 //交换temp[0]和ss[i]的值temp[1]=ss[i];ss[i]=temp[0];temp[0]=temp[1];}srand((unsigned)time(0));color(2);for(i=0;i<length;i++){if(i==0){gotoxy(ss[i].x,ss[i].y);printf("¤");
//                printf(" 0");}else{gotoxy(ss[i].x,ss[i].y);c=rand()%13+1;//           printf("");printf("⊙");}}gotoxy(68,3);printf("你的得分是:%d",length*100-500);
//         system("cls");for(i=0;i<_time;i++);for(i=0;i<length;i++){gotoxy(ss[i].x,ss[i].y);printf("  ");}
//      _time=100000000;}
}void gotoxy(int x, int y)
{COORD pos;HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);pos.X = x;pos.Y = y;SetConsoleCursorPosition(hOutput, pos);CONSOLE_CURSOR_INFO cursor;cursor.bVisible = FALSE;cursor.dwSize = sizeof(cursor);SetConsoleCursorInfo(hOutput, &cursor);
}void moveobject()
{int x,y;x=ss[0].x;y=ss[0].y;switch (click){case up:y -= 1;break;case down:y += 1;break;case left:x -= 2;break;case right:x += 2;break;case space:_time=4000000;break;case slow:_time=100000000;break;default:break;}ss[0].x=x;ss[0].y=y;
}int ClickControl()
{char c;while (1){if (_kbhit() == 0) return 0;if (_kbhit()){click = _getch();}moveobject();}return 1;
}void food()
{int static foodx,foody,h_food=0;srand((unsigned)time(0));if(!h_food){foodx=rand()%29*2+3;foody=rand()%25+1;gotoxy(foodx,foody);
//      printf("■");h_food=1;}gotoxy(foodx,foody);color(4);printf("■");for(i=0;i<length;i++)if(ss[i].x==foodx&&ss[i].y==foody){length+=1;h_food=0;}
}int color(int c)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色return 0;
}void border()
{if(head->x<=1)head->x=61;else if(head->x>=61)head->x=1;if(head->y<=0)head->y=28;else if(head->y>=28)head->y=0;
}void wall()
{color(5);gotoxy(0,0);for(i=0;i<=61;i+=2){printf("■");}gotoxy(0,28);for(i=0;i<=61;i+=2){printf("■");}for(i=0;i<=28;i++){gotoxy(0,i);printf("■");}for(i=0;i<=28;i++){gotoxy(62,i);printf("■");}
}

运行结果如下:

简单的贪吃蛇代码,可上机运行相关推荐

  1. c4droid语言贪吃蛇代码,为何c4droid运行不来贪吃蛇,还是我找的代码错了

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include #include #define N 225 struct Food { int ...

  2. STM32+LCD实现简单的贪吃蛇小游戏

    寒假放假回家,只能宅在家里,无聊之余,幸好带了一块开发板回来,以前做项目都是在网上找相似或者有关联的项目,把别人的代码拿过来,修改修改,拼拼凑凑出自己项目,既然无聊就自己动脑筋思考,自己动手写贪吃蛇的 ...

  3. VC环境下简单的贪吃蛇

    下午真无聊的不知道干什么了,翻翻自己以前写的代码,偶然看到大一时写的这个简单的贪吃蛇,自己玩了几把后还是决定发到博客吧.(实在无聊,打发时间) 注:完全基于VC++6.0环境,不支持Linux 下te ...

  4. Python 简单实现贪吃蛇小游戏

    文章目录 1. pygame库的简介2. pygame库的安装3. python代码实现贪吃蛇小游戏4. pyinstaller打包成exe 很多人学习python,不知道从何学起. 很多人学习pyt ...

  5. 老滚5初始化python失败_五分钟学会怎么用python做一个简单的贪吃蛇

    Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发.我们今天将利用它来制作一款大家基本都玩过的小游戏--贪吃蛇. 一.需要导入的包 import pygame ...

  6. c语言安卓贪吃蛇代码下载,C语言贪吃蛇代码

    c语言编写贪吃蛇源代码,简单易懂,文件为VC源代码.如果你正在学习c语言,就来下载吧.很经典的 C语言贪吃蛇代码部分 #include #include #include#include #defin ...

  7. 利用51单片机+hc595芯片配合在led点阵上玩贪吃蛇 第二篇“自动运行函数”

    利用51单片机+hc595芯片配合在led点阵上玩贪吃蛇 第二篇"自动运行函数" 完整的项目链接: https://github.com/linxinloningg/51_chip ...

  8. Java实现简单的贪吃蛇

    这两天学着做了一个简单的贪吃蛇,只是为了练习用,所以很多地方都不完美 实现方式是用链表,代码中有详细注释 活动区域Yard: <span style="font-size:14px;& ...

  9. 贪吃蛇的c语言程序码,C语言贪吃蛇代码下载_C语言贪吃蛇代码官方下载-太平洋下载中心...

    C语言编写贪吃蛇源代码,简单易懂,文件为VC源代码.如果你正在学习c语言,就来下载吧.很经典的. C语言贪吃蛇代码原理: 产生一个固定大小没有边界的游戏区域,蛇从区域的中心开始,由玩家通过键盘控制蛇的 ...

  10. c语言字符蛇代码,C语言实现贪吃蛇代码

    本文实例为大家分享了C语言实现贪吃蛇代码的具体代码,供大家参考,具体内容如下 #include"stdafx.h" #include #include #include #incl ...

最新文章

  1. Android runOnUiThread() 方法的使用
  2. C语言中“数组名”和“数组名”
  3. spark的python开发安装方式_PyCharm搭建Spark开发环境的实现步骤
  4. cuda gpu相关汇总
  5. html解释json,json 解析
  6. java二次指数平滑法预测未来的值
  7. heroku java_部署Java Web项目到Heroku
  8. ZOJ 1242 Carbon Dating
  9. 中国幻想向欧美妥协取得5G权益将是一种错误
  10. 微软小娜关闭服务器,图文详解彻底关闭windows10系统里的小娜(Cortana)语音服务-系统操作与应用 -亦是美网络...
  11. 【机器学习中的矩阵求导】(五)矩阵对矩阵求导
  12. oracle存货转资产,存货转固定资产账务处理
  13. redis keys命令,生产环境慎用,最好屏蔽掉
  14. Android之QQ登录
  15. 解决安卓手机卡顿的七个技巧
  16. 教培企业女神节线上营销方案怎么做好?
  17. Snakemake报错Outputs of incorrect type
  18. 公钥,私钥,数字签名,证书图解(转)
  19. win7设置多用户登陆和修改3389端口、win10设置多用户登陆和修改3389端口
  20. App中 微信分享 代付功能 业务设计 与 代码实现

热门文章

  1. Pytorch优化器全总结(二)Adadelta、RMSprop、Adam、Adamax、AdamW、NAdam、SparseAdam(重置版)
  2. ABB机器人切割铣削钻孔自动化加工应用
  3. 如何关闭JxBrowser,正确退出JxBrowser的方法
  4. 桌面共享工具(可以实现RTMP直播、K歌、投屏等功能)
  5. 2021-11-02 Kafka、Zookeeper的下载、打开、关闭
  6. 从零开发HarmonyOS(鸿蒙)运动手表小游戏——数字华容道
  7. 红外图像和可见光图像异源图像配准问题研究
  8. 对话系统 | (8) 任务型对话系统概述
  9. QGIS教程02---QGIS加载数据的4种方法
  10. JavaScript运算符优先级