//十全十美游戏

//6*6一直到10*10,不过我只玩过6*6,其它的不知道能不能过

//按p键可以跳关

#define Up  0x4800

#define Down  0x5000

#define P    0x1970

#define R    0x1372

#define Enter  0x1c0d

#define Esc   0x11b

#define Right  0x4d00

#define Left  0x4b00

#include

#include

#include

#include

#include

#include

//定义核心数据

int LargeStartx;

int LargeStarty;  //大方格的起始位置

int SmallStartx;

int SmallStarty;  //小方格的起始位置

int array=5;          //行列式的大小

int position;       //方格的位置用0-array*array-1表示

typedef struct rect2  //定义大方格的属性即移动方格的属性

{

int nowx;

int nowy;

int agox;

int agoy;

int size;//40

char color;

}Large;

Large LargeRect;

char Attr[10*10];  //记录小方格的状态,用'W'(white)与'R'(red)表示。

typedef struct add     //用于改变小方格颜色时,五个方向的增加量(包括当前位置)

{

int x;

int y;

int p;

}Add;

typedef struct  rect1 //记录小方格的当前位置=大方格的当前位置-(大方格的大小-小方格的大小)/2,x轴与y轴一样

{

int nowx;

int nowy;

int size;  //20

char color;

}Small;

Small SmallRect;

void ChargeColor(int );

void InitData1();

void InitData2();

void DrawLargeRect(int ,int ,int ,char );

void DrawSmallRect(int ,int ,int ,char );

void InitPic();

int Win();

int Judge(int ,int );

void main()

{

int key;

int gdriver=DETECT, gmode;

registerbgidriver(EGAVGA_driver);

initgraph(&gdriver, &gmode, "");

setbkcolor(BLUE);

cleardevice();

InitData1();

InitData2();

InitPic();

do

{

key=bioskey(0);

LargeRect.agox=LargeRect.nowx;

LargeRect.agoy=LargeRect.nowy;

switch(key)

{

case Up:

{

LargeRect.nowy-=LargeRect.size;

if(LargeRect.nowy

setwritemode(1);

DrawLargeRect(LargeRect.agox,LargeRect.agoy,LargeRect.size,LargeRect.color);

DrawLargeRect(LargeRect.nowx,LargeRect.nowy,LargeRect.size,LargeRect.color);

setwritemode(0);

position-=array;

break;

}

case Down:

{

LargeRect.nowy+=LargeRect.size;

if(LargeRect.nowy>LargeStarty+LargeRect.size*(array-1))  {LargeRect.nowy-=LargeRect.size;continue;}

setwritemode(1);

DrawLargeRect(LargeRect.agox,LargeRect.agoy,LargeRect.size,LargeRect.color);

DrawLargeRect(LargeRect.nowx,LargeRect.nowy,LargeRect.size,LargeRect.color);

setwritemode(0);

position+=array;

break;

}

case Left:

{

LargeRect.nowx-=LargeRect.size;

if(LargeRect.nowx

setwritemode(1);

DrawLargeRect(LargeRect.agox,LargeRect.agoy,LargeRect.size,LargeRect.color);

DrawLargeRect(LargeRect.nowx,LargeRect.nowy,LargeRect.size,LargeRect.color);

setwritemode(0);

position-=1;

break;

}

case Right:

{

LargeRect.nowx+=LargeRect.size;

if(LargeRect.nowx>LargeStartx+LargeRect.size*(array-1))  {LargeRect.nowx-=LargeRect.size;continue;}

setwritemode(1);

DrawLargeRect(LargeRect.agox,LargeRect.agoy,LargeRect.size,LargeRect.color);

DrawLargeRect(LargeRect.nowx,LargeRect.nowy,LargeRect.size,LargeRect.color);

setwritemode(0);

position+=1;

break;

}

case P:

{

setbkcolor(BLUE);

cleardevice();

if(array<10)  array++;

else array=5;

InitData2();

InitPic();

break;

}

case R:

{

setbkcolor(BLUE);

cleardevice();

InitData2();

InitPic();

break;

}

case Enter:

{

SmallRect.nowx=LargeRect.nowx+10;

SmallRect.nowy=LargeRect.nowy+10;

for(int i=0;i<5;i++)

ChargeColor(i);

break;

}

case Esc:

{

closegraph();

exit(1);

}

}

if(Win())

{

outtextxy(100,50,"CONGRATULATIONS!");

sleep(5);

setbkcolor(BLUE);

cleardevice();

if(array<10)  array++;

else array=5;

c语言十全十美游戏规则,十全十美游戏相关推荐

  1. 幼儿园c ch语言教育,幼儿园语言教育内容之三——听说游戏

    听说游戏 --幼儿园语言教育内容之三 1.听说游戏的概念:确切地说听说游戏是由教师设计组织,有明确的语言学习指向目标,有明确地语义内容的语言教学游戏.听说游戏的主要教育目标以培养幼儿倾听和表述能力为主 ...

  2. 天黑请闭眼 杀人游戏 规则

    "天黑请闭眼" "杀人游戏" 规则 杀人游戏规则 游戏概述: 这是一个锻炼表达能力.判断力.观察力.思维能力和表演能力-的游戏.每一个曾经参与游戏的人都会被它深 ...

  3. 1到100猜数字游戏规则c语言,[C语言课程设计猜数字游戏1.doc

    [C语言课程设计猜数字游戏1 课 程 设 计 报 告 课程名称 C语言程序设计报告 课题名称 猜数字游戏 专 业 电气工程及其自动化 班 级 1104 学 号 33 姓 名 张腾 指导教师 黄晓宇 丁 ...

  4. 2048界面优化c语言,好玩的2048小游戏,C语言的代码分享给你,快来练习吧!

    学习C/C++一个多月了,我们已经学习了c语言数据的基本类型.变量的输入输出.进制转换.运算符和分支结构.循环结构.数组.指针.函数和字符串结构体等等,在老师带着我们作出了一个贪吃蛇的过程中让我深刻的 ...

  5. 回顾2018,正在改变未来游戏规则的技术

    来源:资本实验室 回顾2018年,基于数字化的新技术继续推动着各行的的变革.人工智能.基因技术.物联网.3D打印.区块链--这些技术的应用在改变传统行业游戏规则的同时,给我们提供了关于未来技术应用的想 ...

  6. LYVC揭秘硅谷核心基金圈投资游戏规则

    本文讲的是LYVC揭秘硅谷核心基金圈投资游戏规则[IT168 资讯]从最早期的半导体企业,到Intel.苹果等巨头首次展露锋芒,再到2000年的互联网泡沫破灭,随着经济与科技形势不断起伏,硅谷风险投资 ...

  7. 【C语言项目】贪吃蛇游戏(上)

    00. 目录 文章目录 00. 目录 01. 开发背景 02. 功能介绍 03. 欢迎界面设计 3.1 常用终端控制函数 3.2 设置文本颜色函数 3.3 设置光标位置函数 3.4 绘制字符画(蛇) ...

  8. c语言400行小游戏,400行代码编C语言控制台界版2048游戏,编写疯子一样的C语言代码...

    今天闲来无聊,带着大家编写黑窗口版本的2048,效果如下: 一.游戏介绍 <2048>是最近比较流行的一款数字游戏.原版2048首先在github上发布,原作者是Gabriele Ciru ...

  9. 多人联机的俄罗斯方块游戏(C++),游戏规则模仿任天堂Tetris99,基于qt,kcp,protobuf,qslog。

    目录 Tetris 游戏截图 游戏菜单 1v1对战 9人对局 游戏特性细节介绍 攻击机制 Tetris标准特性 Super Rotation System(超级旋转系统) 7 bag system ( ...

最新文章

  1. 平板电脑安装软件_题宝典软件升级了,微信公众号版不受影响,电脑版/手机APP/平板APP需要重新下载安装...
  2. 大白话 + 13 张图解 Kafka
  3. Springboot注册Filter
  4. java 将json转成utf 8_解决JSON.stringify()自动将中文转译成unicode的方法
  5. 3.MongoDB数据查询
  6. linux-获取帮助-ls命令-date命令-man命令
  7. easymock参数_EasyMock参数匹配器
  8. Linux下安装配置PHP环境(上)---Apache2
  9. 访问量中 pv uv ip的区别
  10. Spring 的 BeanPostProcessor接口实现
  11. IDEA配置方法注释模板
  12. idea中的maven项目的xml文件的xmlns报错的解决办法
  13. 管理信息系统开发流程
  14. dvwa没有file1.php,文件包含漏洞-DVWA
  15. 零基础转行做IT程序员要学哪些知识?
  16. [附源码]SSM计算机毕业设计逸尘房屋销售管理系统JAVA
  17. 三维体素图绘制实验与教程
  18. 圆的css样式,圆形进度条css3样式
  19. MATLAB(矩阵基本运算)
  20. H5 语音合成播报功能

热门文章

  1. Kaldi 入门使用教程
  2. 由ERP生产提前期的设定引发的思考
  3. String,无所不在的数据类型
  4. ChatGPT国内镜像站
  5. 【证明】对称矩阵特征方程k重根恰有k个线性无关的特征向量
  6. 在调试的时候碰到了Render process gone.问题
  7. 【C语言】打印乘法口诀表
  8. linux 服务器内存清理内存缓存 详细说明 java jvm
  9. html好看的文字特效
  10. panic: runtime error: invalid memory address or nil pointer dereference