好久不资瓷了。

首先声明,这个东西为转载(窝不会写这个。)

原作者:洛谷dalaoWZK20080124

代码如下:

#include <iostream>
#include <Windows.h>
#include <conio.h>
#include <fstream>
using namespace std; char ch='w',o; int i=,j=,a[][],b[],c[],u=,gh=,i1=,j1=,h=,s=,m=,su=; int main() { ifstream data("D:\\max.data");
int dd,d;
while (data >> dd) {
d=dd;
}
data.close();
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
cout << "-";
for(int k=; k<=; k++)
cout << "--";
cout << "\n";
for(int k=; k<=; k++) {
cout << "| ";
for(int u=; u<=; u++)
cout << " ";
cout << "|\n";
}
cout << "-";
for(int k=; k<=; k++)
cout << "--";
cout << "\n当前得分:0 当前速度:18\n历史最高分:"<< d;
while(true) {
Sleep((-su)*);
gh++;
b[gh]=i;
c[gh]=j;
a[i][j]=;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {j*,i});
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN );
printf("█");
if(kbhit()) {
o = getch();
if(o=='+'&&su+<=) {
su++;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {,});
cout << su << " ";
}
if(o=='-'&&su->=) {
su--;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {,});
cout << su << " ";
}
if(o=='w'&&a[i-][j]!=)
ch=o;
if(o=='s'&&a[i+][j]!=)
ch=o;
if(o=='a'&&a[i][j-]!=)
ch=o;
if(o=='d'&&a[i][j+]!=)
ch=o;
}
switch (ch) {
case 'w':
i--;
break;
case 's':
i++;
break;
case 'a':
j--;
break;
case 'd':
j++;
break;
default:
break;
}
if(i>)
i=;
if(i==)
i=;
if(j>)
j=;
if(j==)
j=;
if(a[i][j]==) {
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {,});
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
cout << "游戏结束 按1退出";
char uuu;
while(uuu!='')
uuu=getch();
system("cls");
if(s>d) {
cout << "破记录了";
std::ofstream outFile;
outFile.open("D:\\max.data");
outFile << s;
outFile.close();
}
return ;
}
if(i==i1&&j==j1) {
h=;
m=;
s=s+su;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {,});
cout << s;
}
a[i][j]=;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {j*,i});
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE );
printf("█");
while(m==) {
i1=(rand()%)+;
j1=(rand()%)+;
if(a[i1][j1]==) {
m=;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {j1*,i1});
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN|FOREGROUND_RED );
printf("█");
}
}
int k=;
if(h==) {
while(k<gh) {
k++;
if(b[k]!=) {
a[b[k]][c[k]]=;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), {c[k]*,b[k]});
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
printf(" ");
b[k]=;
break;
}
}
}
h=;
}
}

有空的话可以颓一下(不是)

关于一款c++贪吃蛇小游戏的更多相关文章

  1. 贪吃蛇小游戏-----C语言实现

    1.分析 众所周知,贪吃蛇游戏是一款经典的益智游戏,有PC和手机等多平台版本,既简单又耐玩.该游戏通过控制蛇头方向吃食物,从而使得蛇变得越来越长,蛇不能撞墙,也不能装到自己,否则游戏结束.玩过贪吃蛇的 ...

  2. C++ 简单的控制台贪吃蛇小游戏

    由于比较懒,所以不怎么写,觉得这样不应该.我应该对自己学的做出整理,不管是高端低端,写出来是自己的. // 贪吃蛇.cpp : 定义控制台应用程序的入口点. // #include "std ...

  3. JS高级---案例:贪吃蛇小游戏

    案例:贪吃蛇小游戏 可以玩的小游戏,略复杂,过了2遍,先pass吧 先创建构造函数,再给原型添加方法.分别创建食物,小蛇和游戏对象. 食物,小蛇的横纵坐标,设置最大最小值,运动起来的函数,按上下左右键 ...

  4. Java GUI学习,贪吃蛇小游戏

    JAVA GUI练习 贪吃蛇小游戏 前几天虽然生病了,但还是跟着狂神学习了GUI的方面,跟着练习了贪吃蛇的小项目,这里有狂神写的源码点我下载,还有我跟着敲的点我下载,嘿嘿,也就注释了下重要的地方,这方 ...

  5. 用GUI实现java版贪吃蛇小游戏

    项目结构 新建一个JFrame窗口,作为程序入口 public class GameStart{ public static void main(String[] args) { JFrame jFr ...

  6. Java 用java GUI写一个贪吃蛇小游戏

    目录 主要用到 swing 包下的一些类 上代码 游戏启动类 游戏数据类 游戏面板类 代码地址 主要用到 swing 包下的一些类 JFrame 窗口类 JPanel 面板类 KeyListener ...

  7. html5面向对象做一个贪吃蛇小游戏

    canvas加面向对象方式的贪吃蛇 2016-08-25 这个小游戏可以增加对面向对象的理解,可以加强js逻辑能力,总之认真自己敲一两遍收获还是不少啊!!适合刚学canvas的同学练习!! 废话不多说 ...

  8. 用python+pygame写贪吃蛇小游戏

    因为python语法简单好上手,前两天在想能不能用python写个小游戏出来,就上网搜了一下发现了pygame这个写2D游戏的库.了解了两天再参考了一些资料就开始写贪吃蛇这个小游戏. 毕竟最开始的练手 ...

  9. Java贪吃蛇小游戏

    贪吃蛇 思路 首先构思游戏布局,计算合理的坐标系. 绘制静态数据(广告.初始小蛇.提示信息.棋盘) 添加键盘监听事件,改变游戏状态以及小蛇运动方向 添加定时器,让小蛇在一段时间内移动一定的距离 随机产 ...

随机推荐

  1. USACO 1.1 Greedy Gift Givers

    模拟. 如果用$map$的话,会很好写. 如果你不会$map$的话,在此小广告:https://blog.csdn.net/CQBZLYTina/article/details/80063739 /* ...

  2. # Python3微博爬虫[requests+pyquery+selenium+mongodb]

    目录 Python3微博爬虫[requests+pyquery+selenium+mongodb] 主要技术 站点分析 程序流程图 编程实现 数据库选择 代理IP测试 模拟登录 获取用户详细信息 获取 ...

  3. 技能节-AI人脸识别

    我们收到技能节项目的通知是在两周之前,项目要求做个人脸评分系统. 两周时间写一个"人脸评分系统",好像时间比较紧了,还好我们完成了~这个项目是将摄像头捕获到的包含人脸的图像传输到百 ...

  4. 论文笔记-IGCV3:Interleaved Low-Rank Group Convolutions for Efficient Deep Neural Networks

    论文笔记-IGCV3:Interleaved Low-Rank Group Convolutions for Efficient Deep Neural Networks 2018年07月11日 14 ...

  5. git的常用指令(一)

    1. 查看git远程的所有分支 git branch -a 2.查看本地已有的分支 git branch 3.本地检出一个新的分支并推送到远程仓库 一).创建本地分支 git checkout -b ...

  6. C# WPF 数据绑定

    后台通知: public event PropertyChangedEventHandler PropertyChanged; protected void OnPropertyChanged(str ...

  7. C++:函数先声明后实现

    贼神奇的是,直到昨天在写flex规则的时候我才知道C++中的函数要么在使用之前先定义,要么将实现放在调用之前,不允许先调用后实现.之前一年多竟然不知道这件事,汗````,当然也是可能这件事本身和我思考 ...

  8. QT之QString的arg方法

    转载.标记一下,总结的很好 转自 http://www.cnblogs.com/lomper/p/4135387.html 在QT的QString中,arg方法类似于C中的printf中使用的格式输出 ...

  9. spring AOP的相关术语

    连接点:Joinpoint   其实业务层接口的方法 切入点:Pointcut 被增强的是切入点,没被增强是永远都是连接点.连接点不一定是切入点,切入点一定是连接点 通知:Advice 就是指要增强的 ...

  10. sqlserver关于发布订阅replication_subscription的总结

    (转载)sqlserver关于发布订阅replication_subscription的总结 来自 “ ITPUB博客 ” ,原文地址:http://blog.itpub.net/30126024/v ...