好久不资瓷了。

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

原作者:洛谷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. 酷Q插件_SDK———入门与使用

    1.这里使用的是易语言的SDK,所以请看不惯的人自行离开.{wymbf.} 1.2 这里不会直接给你工程,请用动手打代码,动脑思考. 1.3 不知道.不了解酷Q是干嘛的,请访问:https://cqp ...

  2. day29 元类及异常处理

    元类及异常处理 元类 什么是元类 在python中,一切皆对象,对象是由类产生的,那么类是不是对象呢? 举例: class A: pass print(type(A)) # <class 'ty ...

  3. 彻底搞懂 Elasticsearch Java API

    说明 在明确了ES的基本概念和使用方法后,我们来学习如何使用ES的Java API. 本文假设你已经对ES的基本概念已经有了一个比较全面的认识. 客户端 你可以用Java客户端做很多事情: 执行标准的 ...

  4. hdoj4812 D Tree(点分治)

    题目链接:https://vjudge.net/problem/HDU-4812 题意:给定一颗带点权的树,求是否存在一条路经的上点的权值积取模后等于k,如果存在多组点对,输出字典序最小的. 思路: ...

  5. gdb移植(设备端本地版本)

    Gdb下载地址:http://ftp.gnu.org/gnu/gdb/ ncurse下载地址:http://ftp.gnu.org/pub/gnu/ncurses/ 目录结构如下: ├── insta ...

  6. gRPC 本地服务搭建

    RPC RPC 原理 主流 RPC 框架 gRPC 概述 特点 服务端创建 定义服务 生成 gRPC 代码 服务端实现 客户端实现 踩坑记录 源码 RPC RPC 原理 RPC 框架的目标就是让远程服 ...

  7. Remainder Problem(分块) Educational Codeforces Round 71 (Rated for Div. 2)

    引用:https://blog.csdn.net/qq_41879343/article/details/100565031 下面代码写错了,注意要上面这种.查:2  800  0,下面代码就错了. ...

  8. Python3迭代器与生成器

    迭代器 迭代是Python最强大的功能之一,是访问集合元素的一种方式. 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退 ...

  9. 关于php性能优化

    php性能优化 1.尽量静态化: 如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍. 当然了,这个测试方法需要在十万级以上次执行,效果才明显. 其实静态方 ...

  10. 数据库数据导入/导出报错:无法在只读列“Id”中插入数据。

    本文仅供小白参考,大佬请随意...... 本例是:从vs 2017自带的localDB数据库的数据---导出到---->Sql Server 2008中的相应数据库中 1. 导出数据库: 2. ...