该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

#define LEFTPRESS 0xff01

#define LEFTCLICK 0xff10

#define LEFTDRAG 0xff19

#define MOUSEMOVE 0xff08

int num[10][10];/*范围*/

int p[10][10];/*统计雷的数组*/

int loop;/*重新来的标志*/

int again=0;/*是否重来的变量*/

int scorenum;/*一开始统计有几个雷*/

char score[3];/*输出一共有几个地雷*/

int Keystate;

int MouseExist;

int MouseButton;

int MouseX;

int MouseY;

/*鼠标光标形状定义*/

typedef struct

{

unsigned int shape[32];

char hotx;

char hoty;

}SHAPE;

/*箭头型*/

SHAPE ARROW={

{

0x3fff,0x1fff,0x0fff,0x07ff,

0x03ff,0x01ff,0x00ff,0x007f,

0x003f,0x00ff,0x01ff,0x10ff,

0x30ff,0xf87f,0xf87f,0xfc3f,

0x0000,0x7c00,0x6000,0x7000,

0x7800,0x7c00,0x7e00,0x7f00,

0x7f80,0x7e00,0x7c00,0x4600,

0x0600,0x0300,0x0300,0x0180

},

0,0,

};

/*鼠标光标显示*/

void MouseOn()

{

_AX=0x01;

geninterrupt(0x33);

}

/*鼠标光标掩示*/

void MouseOff()/*鼠标光标隐藏*/

{

_AX=0x02;

geninterrupt(0x33);

}

void MouseSetXY(int x,int y)/*设置当前位置*/

{

_CX=x;

_DX=y;

_AX=0x04;

geninterrupt(0x33);

}

int LeftPress()/*左键按下*/

{

_AX=0x03;

geninterrupt(0x33);

return(_BX&1);

}

void MouseGetXY()/*得到当前位置*/

{

_AX=0x03;

geninterrupt(0x33);

MouseX=_CX;

MouseY=_DX;

}

begain()/*游戏开始画面*/

{

int i,j;

loop: cleardevice();

MouseOn();

MouseSetXY(180,30);

MouseX=180;

MouseY=30;

scorenum=0;

setfillstyle(SOLID_FILL,7);

bar(190,60,390,290);

setfillstyle(SOLID_FILL,8);

for(i=100;i<300;i+=20)/*画格子*/

for(j=200;j<400;j+=20)

bar(j-8,i+8,j+8,i-8);

setcolor(7);

setfillstyle(SOLID_FILL,YELLOW);/*画脸*/

fillellipse(290,75,10,10);

setcolor(YELLOW);

setfillstyle(SOLID_FILL,0);

fillellipse(285,75,2,2);

fillellipse(295,75,2,2);

setcolor(0);

bar(287,80,293,81);

randomize();

for(i=0;i<10;i++)

for(j=0;j<10;j++)

{

num[i][j]=random(7)+10;/*用10代表地雷算了*/

if(num[i][j]==10)

scorenum++;

}

sprintf(score,"%d",scorenum);

setcolor(1);

settextstyle(0,0,2);

outtextxy(210,70,score);

scorenum=100-scorenum;/*为了后面判断胜利*/

}

gameove()/*游戏结束画面*/

{

int i,j;

setcolor(0);

for(i=0;i<10;i++)

for(j=0;j<10;j++)

if(num[i][j]==10)/*是地雷的就显示出来*/

{

setfillstyle(SOLID_FILL,RED);

bar(200+j*20-8,100+i*20-8,200+j*20+8,100+i*20+8);

setfillstyle(SOLID_FILL,0);

fillellipse(200+j*20,100+i*20,7,7);

}

}

int tongji(int i,int j)/*计算有几个雷*/

{

int x=0;/*10代表地雷*/

if(i==0&&j==0)

{

if(num[0][1]==10)

x++;

if(num[1][0]==10)

x++;

if(num[1][1]==10)

x++;

}

else if(i==0&&j==9)

{

if(num[0][8]==10)

x++;

if(num[1][9]==10)

x++;

if(num[1][8]==10)

x++;

}

else if(i==9&&j==0)

{

if(num[8][0]==10)

x++;

if(num[9][1]==10)

x++;

if(num[8][1]==10)

x++;

}

else if(i==9&&j==9)

{

if(num[9][8]==10)

x++;

if(num[8][9]==10)

c语言挖地雷游戏,c扫雷小游戏相关推荐

  1. C语言大一课设 扫雷小游戏

    目录 [题    目]扫雷小游戏 [项目简介] [总体功能结构流程图] 登录和注册流程图: 打印棋盘流程图: 计算周围雷的个数流程图: test.c game.h game.c 运行结果 (1)注册运 ...

  2. c语言小游戏 精简_C语言开发简易版扫雷小游戏

    C 语言开发简易版扫雷小游戏 本文给大家分享的是一个使用 C 语言开发的命令行下的简易版扫雷小游戏, 本身没有什么太 多的技术含量, 只不过是笔者的处女作, 所以还是推荐给大家, 希望对大家学习 C ...

  3. C语言实现扫雷小游戏 纯小白 非黑窗口

    C语言实现一个普通的扫雷小游戏 纯小白所编(含代码非黑窗口!) 扫雷 主要功能 1.创建一个图形界面 2.了解扫雷游戏的原理 3.随机生成雷的位置 4.为整个数组加密,并在雷周围的位置加一 5.导入图 ...

  4. 用c语言实现扫雷小游戏。

    相信小伙伴在学习c语言的时候想做一些小趣事,下面就是用c语言来实现一个扫雷小游戏,不过是简单的实现扫雷(只是通过数组的方式来实现),适合新手学习. 我用的是vs敲的这个代码,大家可以用vs运行(可能有 ...

  5. ChatGPT实现用C语言写一个扫雷小游戏

    前几天我们利用 ChatGPT实现用C语言写一个学生成绩管理系统 其过程用时不到30秒,速度惊人 今天又让ChatGPT用C语言写了一个扫雷小游戏,它的回答是:抱歉,我是AI语言模型,无法编写程序. ...

  6. 一个扫雷小游戏带你初识VUE3和typescript

    一个扫雷小游戏带你初识VUE3和typescript 阅读本文你会了解到: vue3的部分新特性 typescript的基本使用 部分es6语法 基础部分 为什么要使用ref和reactive来声明变 ...

  7. VB6实现简单的扫雷小游戏

    #VB实现简单的扫雷小游戏 扫雷这个小游戏可谓是简单又好玩,百万不腻,不知道有没有小伙伴跟博主一样脑热的曾经扫过一整个屏幕的雷... 源码可以在作者的资源页下载 https://download.cs ...

  8. 使用C语言写一个扫雷小游戏

    前言 相信扫雷游戏小伙伴们肯定都玩过吧,学习了C语言中的数组.函数等基础内容之后就可以自己写一个简易的扫雷小游戏了,今天就我写扫雷小游戏的过程及思路写一篇博客,希望大家看完我的博客能有所收获. 软件及 ...

  9. 用C语言实现一个简单的扫雷小游戏(附全代码及教程)

    本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下: 首先,创建一个text.c文件: 编写主函数: int main() {test();return 0; } 定义test ...

  10. C语言简单的键盘玩扫雷小游戏(完结)

    1:这次我们会将前面的代码进行整合,和整理,最终使我们的程序可以有效的运行起来. [1]初始化函数. void GameInit() {     //随机数种子     srand((unsigned ...

最新文章

  1. Ext JS 4倒计时:动态加载和新的类系统
  2. Swift extension 扩展实用Tips
  3. linux 下部署Python项目
  4. 一个 http 请求的曲折经历
  5. 微信小程序动态点赞php,在微信小程序中如何实现点赞功能
  6. tomcat下多个app 不同的图标_5G SA网络切片下,独立APP应用如何自行接入不同网络切片...
  7. sqlplus 登录oracle 报ERROR: ORA-01034:ORACLE not available ORA-27101:shared memory realm does not exit
  8. 使用next.js完成从开发到部署
  9. 麻省、北大、清华等顶尖高校与企业 20 位强化学习专家齐聚,RLChina 2021 强化学习暑期课免费报名啦!...
  10. python属性赋值和赋值_python赋值和地址
  11. android开发01 --开发工具
  12. c语言自治区二级考试题库,新疆自治区计算机二级c语言考试题库---副本.pdf
  13. Hive窗口函数进阶指南
  14. Excel小技巧分享-自动缩放的表格来了
  15. 老板面试怎么谈?千万不要走近误区。
  16. 守望先锋显示服务器异常,守望先锋错误代码含义及解决方法
  17. 事件知识图谱项目整理
  18. springcloud熔断器
  19. c语言中unsigned long,unsigned long 的用法
  20. 普希金:假如生活欺骗了你

热门文章

  1. 勾股定理算斜边用计算机怎么按,三角形斜边(直角三角形斜边计算器)
  2. Word入门教程之插入文字批注(转)
  3. 计算机职业资格证书介绍(大全)
  4. 用单片机实现流水灯(进阶版)
  5. 世界著名管理定律:管人用人育人留人定律
  6. 微信小程序毕业设计 基于微信小程序在线考试系统开题报告
  7. Few Shot Vid2Vid 论文心得
  8. Android 获取手机分辨率
  9. 【新知实验室】体验腾讯云音视频
  10. 【转载】:马家寨:揭开陈圆圆携吴三桂后裔隐藏与繁衍真相