今天为我的推箱子整了个开始界面,运用了头文件#include<windows.h>中的函数实现了在任意坐标输出和变化颜色。

任意坐标输出:

void gotoxy(int x, int y)
{COORD c;c.X = x;c.Y = y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);
}

变化颜色:

int color(int c)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),c);return 0;
}

定义好后,只要在printf()前赋上color(int c)  ;gotoxy(int x, int y)就好了,c为颜色种类,x,y是坐标。

用system("mode con cols=110 lines=30");定义窗口的大小。

还有昨天的那道n个罪犯排成一列,我又优化了二次。

第一次优化:

#include<stdio.h>
#include<stdlib.h>
#define N 1000000
int a[N]={0};
int main()
{int n,i=0,j=0,r=0,z=0;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);for(i=1;i<n;i++){j=i-a[i];if(j<=0){for(r=0;r<i;r++)a[r]=-1;}else{for(r=j;r<i;r++)a[r]=-1;}}for(i=0;i<n;i++){if(a[i]!=-1)z++;}printf("%d",z);return 0;
}

还是超限了,这题要从后往前写:

第二次优化:

#include<stdio.h>
#include<stdlib.h>
#define N 1000000
int a[N]={0};
int z=N;
int min(int,int);
int main()
{int n,i=0,r=0;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);for(i=n-1;i>=0;i--){if(i>=z)r++;z=min(z,i-a[i]);}printf("%d",n-r);return 0;
}
int min(int a,int b)
{if(a>b)return b;elsereturn a;
}

推箱子开始界面

代码:

void explation()
{int i,j=1;system("cls");color(15);gotoxy(44,3);printf("游戏说明");color(2);for(i=6;i<=22;i++){for(j=20;j<=76;j++){gotoxy(j,i);if(i==6||i==22)printf("=");if(j==20||j==75)printf("||");}}color(3);gotoxy(30,7);printf("tip 1:推动箱子&到达目的地$");color(10);gotoxy(30,11);printf("tip 2:用w,s,a,d,分别控制人物@的上下左右");color(14);gotoxy(30,14);printf("tip 3:别让箱子卡在死角");color(14);gotoxy(30,17);printf("  ┗|`O′|┛ 嗷~~");color(11);gotoxy(30,20);printf("tip 5:按任意键继续");_getch();system("cls");kaishi();
}
void other()
{system("cls");color(3);gotoxy(45,10);printf("(;°○° ) 啊!! ");color(11);gotoxy(45,13);printf("请输入1~3的数!");color(15);gotoxy(40,15);printf("o -_-)=○(按任意键继续)");_getch();system("cls");kaishi();
}

效果:

开始界面:

输入1:

这个界面还要美化下;

输入2:

输入其他数字:

明天优化下结束画面和游戏画面,数学和物理也还要复习一下,今天的总结就到这吧。

明天继续加油!

2021-12-6 学习的打卡学习第十四天(推箱子开始界面)相关推荐

  1. R语言学习笔记——高级篇:第十四章-主成分分析和因子分析

    R语言 R语言学习笔记--高级篇:第十四章-主成分分析和因子分析 文章目录 R语言 前言 一.R中的主成分和因子分析 二.主成分分析 2.1.判断主成分的个数 2.2.提取主成分 2.3.主成分旋转 ...

  2. 2021-12-4 学习的打卡学习第十二天(关于栈的一些题)

    今天刷了道栈算法的题目,然后理解了c++中一些与栈相关的函数.它需要头文件#include<stack> 用法如下: stack<int> S;//声明一个对象 S.empty ...

  3. 生成对抗网络-改进方法|深度学习(李宏毅)(二十四)

    视频地址: ①B站:https://www.bilibili.com/video/BV15W411i7uP?p=2 ②油管:https://www.youtube.com/watch?v=KSN4QY ...

  4. 【强化学习论文合集】三十四.2021机器人与自动化国际会议论文(ICRA2021)

    欢迎订阅本专栏:<强化学习论文合集> 专栏介绍: 本专栏整理了2017~2022年(后面会持续更新)强化学习领域国际顶级会议已录用的论文,会议包括但不限于:ICML.NeurIPS.AAA ...

  5. 2021-11-27 学习的打卡学习第五天(比赛总结/总结失败)

    菜鸟杯考砸了(ノಥ益ಥ),我竟然只写了3题,学校网不好我先做三题,等了一小时,然后断断续续的做了四题,最后一小时交上去全错了,又来不及改了,心态炸裂.我觉得应该是粗心了,加上网站搞人心态...... ...

  6. 2021-12-1 学习的打卡学习第九天(头插法和一些函数)

    今天又是被链表折磨的一天,因为有题要写,还看了一些栈的知识. 运用头插法定义栈: typedef struct node {int sum;struct node*next; }node; typed ...

  7. 2021-12-5 学习的打卡学习第十三天(一些习题)

    本来今天打算用#include<graphics.h>把我的推箱子美化一下,可是codeblocks不支持,弄了一上午差一点连编译器本来的功能都不能用了. 还写了些题: n个罪犯排成一列, ...

  8. 学习淘淘商城第三十四课(在业务逻辑中添加缓存)

    上节课我们一起学习了如何用Spring容器来管理Redis单机版和集群版实现.这节我们来学习下在业务中添加缓存. Redis添加缓存有两种方式,一种是set,另一种是hset,这两种方式的不同之处是h ...

  9. 【强化学习论文合集】二十四.2020智能体和多智能体系统国际联合会议论文(AAMAS2020)

    欢迎订阅本专栏:<强化学习论文合集> 专栏介绍: 本专栏整理了2017~2022年(后面会持续更新)强化学习领域国际顶级会议已录用的论文,会议包括但不限于:ICML.NeurIPS.AAA ...

最新文章

  1. 如何打造项目级硬核简历,成为一名合格的大厂工程师(必看)
  2. eclipse安装反编译插件jd-eclipse
  3. 树莓派3 mysql端口_树莓派3 之 安装Mysql服务
  4. Mybatis 源码解析 -- 基于配置的源码解析(二)
  5. Masuit.Tools,一个免费的轮子
  6. 用于检测敏感词的 PHP 扩展
  7. TensorFlow 2.0简介
  8. 谷歌2D景观转3D风景大片,无惧复杂光线与遮挡
  9. 移动设备尚未形成DDoS的3个原因
  10. Ubuntu安装cacti步骤
  11. gin -get请求的小示例1-Handle处理GET请求
  12. gan loss gan_我的GAN怎么了?
  13. 思源黑体ttf_金刚黑体最粗版丨金刚黑体Bold+San Francisco
  14. 基于动态优先级的时间片轮转调度算法c语言
  15. 高德地图经纬度检索校验
  16. cad断点快捷键_入门CAD必备,如何有效记住CAD快捷键
  17. 共享租赁汽车,必将重新设计中国汽车产业链游戏规则
  18. [mac]添加系统自带辞典或下载的词典包
  19. luat string常用函数详解
  20. uniapp技术应用,以及案列讲解

热门文章

  1. 微信功能,你知道多少
  2. ATI HD 3650 火旋风 玩家版 显卡试用
  3. 百度迁徙之后,大数据进入实用阶段
  4. parsel学习记录
  5. linux grub关闭 fsck,手把手教你安全运行fsck命令
  6. 2023北京个护美健电器展览会
  7. 解析-ESP01模块开发Arduino物联网wifi开关模块
  8. 淡奶油怎么打发 淡奶油打发技巧分享
  9. 华为鸿蒙内置即时通讯,内置鸿蒙系统的四款华为手机,实力都很强,可惜都有一点瑕疵!...
  10. Android 播放mp3 tag乱码分析之java 篇