左右键控制小球左右移动,上键加速,Esc退出。

一个‘@’20分

#include <windows.h>
#include <bits/stdc++.h>
#include <conio.h> using namespace std; char mmp[][], putmmp[][]; int main() { system("color 70");
srand(time(NULL)); for (register int i = ; i <= ; i++) { mmp[i][] = mmp[i][] = mmp[i][] = mmp[i][] = mmp[i][] = ' '; if (i % == && i > ) { mmp[i][rand() % ] = '#';
if (i % == ) { mmp[i][rand() % ] = '@'; } } } int j = , x = , score = , delay = ;
char ch; mmp[j][x] = 'O'; for (register int i = ; i <= ; i++) { Sleep(delay);
if (i == )//500帧后加速(10帧一动)
delay = ;
if (i == )//1000帧后加速(10帧一动)
delay = ;
if (i == )//1500帧后加速(10帧一动)
delay = ; if (i % == ) { j++;
score++;
if (mmp[j][x] == '#') { system("cls");
printf("score:%d", score);
Sleep();
system("cls");
printf("again?(Y/N)");
ch = ;
while(ch ^ 'Y' && ch ^ 'y') { ch = getch();
if (ch == 'N' || ch == 'n') { exit(); } }
main(); }
if (mmp[j][x] == '@')
score += ;
mmp[j][x] = 'O';
system("cls");
putmmp[][] = '+', putmmp[][] = putmmp[][] = putmmp[][] = putmmp[][] = putmmp[][] = '-', putmmp[][] = '+', putmmp[][] = '\n';
int p = ;
for (register int k = j + ; k >= j; k--, p++) { putmmp[p][] = '|'; for (register int l = ; l < ; l++) { putmmp[p][l + ] = mmp[k][l]; } putmmp[p][] = '|', putmmp[p][] = '\n'; }
putmmp[][x + ] = 'O';
fwrite(putmmp, , * , stdout);
puts("|\n+-----+"); } if (kbhit()) { ch = getch(); switch(ch) { case : exit(); break; case -: ch = getch(); switch(ch) { case : if (x > ) { if (mmp[j][x - ] == '#') { system("cls");
printf("score:%d", j);
Sleep();
system("cls");
printf("again?(Y/N)");
ch = ;
while(ch ^ 'Y' && ch ^ 'y') { ch = getch();
if (ch == 'N' || ch == 'n') { exit(); } }
main(); }
if (mmp[j][x - ] == '@') { score += ; }
mmp[j][x] = ' ';
x--;
mmp[j][x] = 'O';
} break; case : if (x < ) { if (mmp[j][x + ] == '#') { system("cls");
printf("score:%d", j);
Sleep();
system("cls");
printf("again?(Y/N)");
ch = ;
while(ch ^ 'Y' && ch ^ 'y') { ch = getch();
if (ch == 'N' || ch == 'n') { exit(); } }
main(); }
if (mmp[j][x + ] == '@') { score += ; }
mmp[j][x] = ' ';
x++;
mmp[j][x] = 'O';
} break; case : j++;
score++; if (mmp[j][x] == '#') { system("cls");
printf("score:%d", j);
Sleep();
system("cls");
printf("again?(Y/N)");
ch = ;
while(ch ^ 'Y' && ch ^ 'y') { ch = getch();
if (ch == 'N' || ch == 'n') { exit(); } }
main(); } mmp[j][x] = 'O';
Sleep();
system("cls");
putmmp[][] = '+', putmmp[][] = putmmp[][] = putmmp[][] = putmmp[][] = putmmp[][] = '-', putmmp[][] = '+', putmmp[][] = '\n';
int p = ;
for (register int k = j + ; k >= j; k--, p++) { putmmp[p][] = '|'; for (register int l = ; l < ; l++) { putmmp[p][l + ] = mmp[k][l]; } putmmp[p][] = '|', putmmp[p][] = '\n'; }
putmmp[][x + ] = 'O';
fwrite(putmmp, , * , stdout);
puts("|\n+-----+"); break; } break; } mmp[j][x] = 'O';
system("cls");
putmmp[][] = '+', putmmp[][] = putmmp[][] = putmmp[][] = putmmp[][] = putmmp[][] = '-', putmmp[][] = '+', putmmp[][] = '\n';
int p = ;
for (register int k = j + ; k >= j; k--, p++) { putmmp[p][] = '|'; for (register int l = ; l < ; l++) { putmmp[p][l + ] = mmp[k][l]; } putmmp[p][] = '|', putmmp[p][] = '\n'; }
putmmp[][x + ] = 'O';
fwrite(putmmp, , * , stdout);
puts("|\n+-----+"); } } return ; }

更新于二〇一九年八月六日(星期二)

#include <windows.h>#include <bits/stdc++.h>#include <conio.h>
using namespace std;
char mmp[10000001][6], putmmp[16][8];
int main() {
system("color 70");srand(time(NULL));
for (register int i = 1; i <= 10000000; i++) {
mmp[i][0] = mmp[i][1] = mmp[i][2] = mmp[i][3] = mmp[i][4] = ' ';
if (i % 3 == 0 && i > 30) {
mmp[i][rand() % 5] = '#';if (i % 20 == 0) {
mmp[i][rand() % 5] = '@';
}
}
}
int j = 1, x = 2, score = 1, delay = 10;char ch;
mmp[j][x] = 'O';
for (register int i = 1; i <= 100000000; i++) {
Sleep(delay);if (i == 500)//500帧后加速(10帧一动)delay = 8;if (i == 1000)//1000帧后加速(10帧一动)delay = 6;if (i == 1500)//1500帧后加速(10帧一动)delay = 4;
if (i % 10 == 0) {
j++;score++;if (mmp[j][x] == '#') {
system("cls");printf("score:%d", score);Sleep(1000);system("cls");printf("again?(Y/N)");ch = 1;while(ch ^ 'Y' && ch ^ 'y') {
ch = getch();if (ch == 'N' || ch == 'n') {
exit(0);
}
}main();
}if (mmp[j][x] == '@')score += 20;mmp[j][x] = 'O';system("cls");putmmp[0][0] = '+', putmmp[0][1] = putmmp[0][2] = putmmp[0][3] = putmmp[0][4] = putmmp[0][5] = '-', putmmp[0][6] = '+', putmmp[0][7] = '\n';int p = 1;for (register int k = j + 15; k >= j; k--, p++) {
putmmp[p][0] = '|';
for (register int l = 0; l < 5; l++) {
putmmp[p][l + 1] = mmp[k][l];
}
putmmp[p][6] = '|', putmmp[p][7] = '\n';
}putmmp[15][x + 1] = 'O';fwrite(putmmp, 1, 18 * 7, stdout);puts("|\n+-----+");
}
if (kbhit()) {
ch = getch();
switch(ch) {
case 27 :
exit(0);
break;
case -32:
ch = getch();
switch(ch) {
case 75 :
if (x > 0) {
if (mmp[j][x - 1] == '#') {
system("cls");printf("score:%d", j);Sleep(1000);system("cls");printf("again?(Y/N)");ch = 1;while(ch ^ 'Y' && ch ^ 'y') {
ch = getch();if (ch == 'N' || ch == 'n') {
exit(0);
}
}main();
}if (mmp[j][x - 1] == '@') {
score += 20;
}mmp[j][x] = ' ';x--;mmp[j][x] = 'O';}
break;
case 77 :
if (x < 4) {
if (mmp[j][x + 1] == '#') {
system("cls");printf("score:%d", j);Sleep(1000);system("cls");printf("again?(Y/N)");ch = 1;while(ch ^ 'Y' && ch ^ 'y') {
ch = getch();if (ch == 'N' || ch == 'n') {
exit(0);
}
}main();
}if (mmp[j][x + 1] == '@') {
score += 20;
}mmp[j][x] = ' ';x++;mmp[j][x] = 'O';}
break;
case 72:
j++;score++;
if (mmp[j][x] == '#') {
system("cls");printf("score:%d", j);Sleep(1000);system("cls");printf("again?(Y/N)");ch = 1;while(ch ^ 'Y' && ch ^ 'y') {
ch = getch();if (ch == 'N' || ch == 'n') {
exit(0);
}
}main();
}
mmp[j][x] = 'O';Sleep(5);system("cls");putmmp[0][0] = '+', putmmp[0][1] = putmmp[0][2] = putmmp[0][3] = putmmp[0][4] = putmmp[0][5] = '-', putmmp[0][6] = '+', putmmp[0][7] = '\n';int p = 1;for (register int k = j + 15; k >= j; k--, p++) {
putmmp[p][0] = '|';
for (register int l = 0; l < 5; l++) {
putmmp[p][l + 1] = mmp[k][l];
}
putmmp[p][6] = '|', putmmp[p][7] = '\n';
}putmmp[15][x + 1] = 'O';fwrite(putmmp, 1, 18 * 7, stdout);puts("|\n+-----+");

break;
}
break;
}
mmp[j][x] = 'O';system("cls");putmmp[0][0] = '+', putmmp[0][1] = putmmp[0][2] = putmmp[0][3] = putmmp[0][4] = putmmp[0][5] = '-', putmmp[0][6] = '+', putmmp[0][7] = '\n';int p = 1;for (register int k = j + 15; k >= j; k--, p++) {
putmmp[p][0] = '|';
for (register int l = 0; l < 5; l++) {
putmmp[p][l + 1] = mmp[k][l];
}
putmmp[p][6] = '|', putmmp[p][7] = '\n';
}putmmp[15][x + 1] = 'O';fwrite(putmmp, 1, 18 * 7, stdout);puts("|\n+-----+");

}
}
return 0;
}

【长期维护】C++休闲(修仙)躲方块小游戏的更多相关文章

  1. Java---俄罗斯方块小游戏

    去年就已经学了这个技术了,一直没去写,现在抽个时间写了个俄罗斯方块游戏. 只有简单的新游戏,暂停,继续,积分功能.简单的实现了俄罗斯的经典功能. 不介绍了,有兴趣的自己运行一下,后面贴出了图片. 代码 ...

  2. keras 修仙笔记一

    对于牛逼的程序员,人家都喜欢叫他大神:因为大神很牛逼,人家需要一个小时完成的技术问题,他就20分钟就搞定.Keras框架是一个高度集成的框架,学好它,就犹如掌握一个法宝,可以呼风唤雨.所以学keras ...

  3. oo修仙之路

    写在前面: 之前听说过oo这门课的威力,计院全体修仙现场的图也被转了不知多少遍,然而自己不亲身经历就不知这门课的难度所在.每次debug时耳边总会想起三国杀里面周瑜的话"挣扎吧,在血和暗的深 ...

  4. 程序猿修仙之路--数据结构之你是否真的懂数组? c#socket TCP同步网络通信 用lambda表达式树替代反射 ASP.NET MVC如何做一个简单的非法登录拦截

    程序猿修仙之路--数据结构之你是否真的懂数组?   数据结构 但凡IT江湖侠士,算法与数据结构为必修之课.早有前辈已经明确指出:程序=算法+数据结构  .要想在之后的江湖历练中通关,数据结构必不可少. ...

  5. LazyCoder修仙之路

    本人不才,没有高文凭,茹果本人的修仙[开发]之路能 ,走的很远,后来的人能看的上我 作品,有不足,和不对,帮帮我完善和理解.这也是我 学习笔记把!

  6. 运维(SA)修仙 之路

    运维(SA)修仙 之路: 大纲: 系统 ,网络 ,数据库,开发 系统 :linux(cent OS && ubuntu)  网络 :路由,防火墙,安全  数据库:mysql, mong ...

  7. 《带你装B,带你飞》pytest修仙之路3 - setup/teardown

    1. 简介 学过unittest的都知道里面用前置和后置setup和teardown非常好用,在每次用例开始前和结束后都去执行一次.当然还有更高级一点的setupClass和teardownClass ...

  8. 《带你装B,带你飞》pytest修仙之路5 - yield操作

    1. 简介 上一篇中,我们刚刚实现了在每个用例之前执行初始化操作,那么用例执行完之后如需要清除数据(或还原)操作,可以使用 yield 来实现.fixture通过scope参数控制setup级别,既然 ...

  9. 从零搭建Golang开发环境--go修仙序章

    1. 什么是go语言 Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态 .强类型.编译型语言 .Go 语 ...

随机推荐

  1. Python 对cookies的处理——urllib2

    import urllib2 import cookielib cookie = cookielib.CookieJar() opener = urllib2.build_opener(urllib2 ...

  2. css 添加手状样式,鼠标移上去变小手

    cursor:pointer, 简单实用. 前端工作一年多,竟然没有博客.说出来别人都要笑话,这是一个新的开始.

  3. ng service(服务)

    ng service(服务) 创建服务命令:ng g service services/+服务名 使用服务的注意事项: 使用(services)服务需要在app.,module.ts(根模块)中引用并 ...

  4. [Android Studio] 2019年Android Studio配置指北

    Android Studio是我学习Android开发路上的第一块绊脚石,新建一个项目,一行代码没动,直接编译不起来,我太难了,所以本文叫指北 本文讲解在9102年如何在国内网络不通畅的情况下流畅的使 ...

  5. 访问http接口时返回502 Bad Getway什么原因怎么解决

    使用 httpclient 工具通过代理服务器请求第三方http 接口,多次返回 502 Bad Getway,少数返回正常. 502 Bad Getway是什么意思? 502 Bad Gateway ...

  6. win10下VSCode+CMake+Clang+GCC环境搭建

    win10下VSCode+CMake+Clang+GCC环境搭建 win10下VSCode+CMake+Clang+GCC环境搭建 安装软件 VSCode插件安装 新建文件夹, 开始撸代码 main. ...

  7. 使用Newspaper3k框架快速抓取文章信息

    一.框架介绍 Newspaper是一个python3库,但是Newspaper框架并不适用于实际工程类新闻信息爬取工作,框架不稳定,爬取过程中会有各种bug,例如获取不到url.新闻信息等,但对于想获 ...

  8. CSS隐藏元素 display、visibility、opacity的区别

    关于使指定元素无法在视野内看到,有3个方法 display: none; opacity: 0; visibility: hidden; 1.display: none; 该方法会改变页面布局. 元素 ...

  9. python编程基础之二十

    字符串的其他常用方法: ord(char)  # 返回char字符对应的码值,可以是中文字符 chr(x)  # 输入一个unicode码,返回对应的字符 eval(str)  # 将str 中的内容 ...

  10. Tomcat基本知识(一)

    顶层架构先上一张Tomcat的顶层结构图(图A),如下: Tomcat中最顶层的容器是Server,代表着整个服务器,从上图中可以看出,一个Server可以包含至少一个Service,用于具体提供服务 ...