首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏编程学习基地

    扫雷

    1 前言 终极目标:打造多关卡扫雷游戏 制作环境: VS2015 支持:VC++2010 VS各个版本 easyx图形库(点我 ) 一直想发表扫雷这种锻炼思维的游戏,其实扫雷弄个标题栏可以随意选择挑战难度是效果最佳的,但是呢easyx图形库没有标题栏,所以就委屈各位看官一级一级打上去了。 case WM_LBUTTONDOWN://左键按下 break; case WM_RBUTTONDOWN://右键按下 WM_RBUTTONDOWN break; } 递归在扫雷中的应用 &imgs[3]); break; case 14: //有四个雷 putimage((x - 1) * 25, (y - 1) * 25, &imgs[4] closegraph(); //重新开始游戏 initmap(); DrawMap(); //渲染地图 } else _exit(0); } } 4

    1K30发布于 2020-05-12
  • 来自专栏文章部

    扫雷游戏

    1.简介: 通过C语言实现扫雷 2.代码实现: 我开创了三个文件,一个用来存储主函数,一个是游戏头文件,最后是游戏主函数,这样的优点是使得模块化,便于可读以及后期修改。

    41510编辑于 2024-06-06
  • 来自专栏编程

    扫雷游戏

    欢迎来到我的代码世界~ 喜欢的小伙伴记得一键三连哦 ૮(˶ᵔ ᵕ ᵔ˶)ა ​ 目录 一、扫雷游戏 二.游戏的分析和设计 1.数据结构的分析 2.文件结构设计 三、游戏的实现 game.h game ..c test.c 四、小白答疑 五、游戏呈现 ​六、大佬扩展 把前面学的一些知识给整合起来,做一个简单的扫雷游戏,扫雷游戏想必大家都玩过,但是这个游戏的底层逻辑是啥呢? 下面的这个扫雷游戏有点简单,大佬勿喷 ​ 一、扫雷游戏 扫雷游戏网页版 - Minesweeper https://www.minesweeper.cn/#google_vignette基本规则:左键翻开这一格 二.游戏的分析和设计 1.数据结构的分析 在扫雷的过程中,布置的雷的个数和排查雷的个数,以及不是雷的个数都需要我们去存储,存储当然会想到数组,不是雷的个数使用排除法只需要把全部的个数存储起来,使用排除法即可 set; } } } void DisplayBoard(char board[ROWS][COLS], int row, int col) { int i = 0; printf("--------扫雷游戏

    80310编辑于 2024-05-11
  • 来自专栏MasiMaro 的技术博文

    vim 从嫌弃到依赖(4)—— .命令

    接下来让我们更加深入到vim中,去学习更多更好的,可以进一步提升效率的技巧 Don’t Repeat Yourself. Let vim repeat it for you 不要进行重复的操作,让vim替你自动完成这些重复的操作。 vim之所以好用,效率高。 来重复上次修改(确实是够简单的) 废话不多说,还是以例子来说明 假设我有这样一段Python代码 if user == "vim": print("vim is best!") 实用技巧》这本书中,作者介绍了一个实用vim的经典范式——一个键移动、另一个键操作。 最后还是做一个总结:本篇讲述了vim中比较强大的一个命令——. 命令,它能重复上次修改。

    73940编辑于 2022-05-10
  • 来自专栏涛的程序人生

    【EasyX】扫雷

    扫雷 本博客介绍利用EasyX加上图片、音乐素材实现一个传统的扫雷小游戏。 1. 主体功能描述 1、全局变量:时间、地图、图片资源、状态; 2、绘图初始化函数drawinit:载入图片资源; 3、设置函数Setup:放置地雷; 4、显示函数Show:依照层次结构显示雷区; 5 2、主要实现步骤 1、明确游戏流程; 2、搭建游戏框架; 3、图片的显示; 4、核心算法尝试使用链表和结构体数组; 5、程序调度; 6、计时器; 7、加亮显示,提醒用户鼠标指向的位置; 8

    54920编辑于 2023-07-10
  • 来自专栏xiaoxi666的专栏

    【开源项目】扫雷

    虽然我最后限制了画面扩展减轻了负担),缩放时需要同步考虑鼠标指针的变换,必须是高精度(int不行,可以用double,但是经过测试雷数太多(大概50*30)的时候double也不够用,因为上层的itemAt函数参数为int); 4. dll分别是:libgccsdw2-1.dll、libstdc++-6.dll、libwinpthread-1.dll,这时一般就没有问题了(如果还提示缺少dll,就自己下载放进去~) 与传统wndows扫雷程序的对比

    1.9K20发布于 2018-10-29
  • 来自专栏Yui编程知识

    扫雷游戏的实现【C语言&扫雷游戏】(初阶)

    前言 看到扫雷,我就想起了以前还在读小学的时候,自己同几个哥哥姐姐围在电脑旁边,在宽带出问题的时候,几个人一起玩着扫雷,虽然不懂得怎么赢但也玩的开心,那是我逝去的童年啊。 正文 扫雷游戏的分析与设计 1.1 扫雷游戏的功能说明 使⽤控制台实现经典的扫雷游戏 游戏可以通过菜单实现继续玩或者退出游戏 扫雷的棋盘是9*9的格子 默认随机布置10个雷 可以排查雷 ◦ 如果位置不是雷 1.2 游戏的分析和设计 1.2.1 数据结构的分析 扫雷的过程中,布置的雷和排查出的雷的信息都需要存储,所以我们需要⼀定的数据结构来存储这些 信息。 写完这个框架我们就要开始着手考虑扫雷的实现了。 使用函数分装代码 这里我们用game()来存放扫雷的全部代码。 同时我们也将代码分装在其他的文件中。

    68710编辑于 2024-10-15
  • 来自专栏编程学习

    实现扫雷游戏

    前言 相信很多人小时候都玩过扫雷游戏,如果用C语言又应该怎么编程实现呢? 一般来讲,扫雷最开始会有一个棋盘,当玩家点击一个位置时就会显示这个位置周围有多少个雷,今天我们就用C语言来实现一个简单的扫雷游戏! 一起来看看吧! 扫雷思路 打印菜单 首先我们可以使用一个函数,来进行菜单的打印,让用户进行选择,如果选择1,用户就可以进入扫雷游戏! 游戏的实现,我们可以用另外的头文件和源文件来进行实现。

    46810编辑于 2024-11-07
  • 来自专栏oeasy教您玩转linux、python

    oeasy教您玩转vim - 4 - # 深入帮助

    深入帮助 回忆上节课内容 上次制作了 oeasy.txt 用 vim oeasy.txt 打开了文件 :f[ile] 查询了当前文件 的信息 从 正常模式或命令模式(Normal mode) 切换到 命令行模式(Command-Line mode) 按 回车 执行命令,执行完了就回来了 我们已经可以在两个模式(命令模式、底线命令模式 模式)之间切换 我们这次想要了解更多的帮助信息 运行帮助 在 vim 上手最难的原因 学习曲线 vim 是公认的非常陡峭的学习曲线 不过突破上去了之后,效率是相当高的 多易必多难 最开始看起来容易的东西,比如 ide 什么都给你配好了,但是你对于底层完全失去了理解和控制 ,到最后反而是最难 我们一点点翻越这陡峭的山,征服 vim 但是为什么是 h、j、k、l 对应方向呢? 使用鼠标 想在 vim 中使用鼠标控制,我们先需要进行基本的配置: 首先我们在 vim 中搜索帮助,输入 :h mouse,可以看到如下图所示的界面: 现在我们进行主题设置 从上图中我们可以看到,vim

    65910发布于 2021-08-06
  • 来自专栏学习

    C语言-扫雷

    对于棋盘的打印,可以打印一个"------扫雷------“的标题。 然后再进行棋盘的打印,先打印一行序列,再换行,用嵌套循环,边打印序列,便往棋盘每个空格中放一个字符。 = set; } } } void DisplayBoard(char board[ROWS][COLS], int rows, int cols) { printf("-------- 扫雷 else { printf("输入的坐标有误,请重新输入"); } } if (win == cols * rows - EASY_COUNT) { printf("恭喜你,扫雷成功

    56410编辑于 2025-01-22
  • 来自专栏毛利学Python

    扫雷小游戏

    扫雷是一款益智类小游戏,最早于 1992 年由微软在 Windows 上发行,游戏适合于全年龄段,规则简单,即在最短的时间内找出所有非雷格子且在中间过程中不能踩到雷, 踩到雷则失败,需重新开始。 我们使用 Python 来实现扫雷游戏,主要用的 Python 库是 pygame。 游戏组成比较简单,主要包括:小方格、计时器、地雷等。

    1.4K20编辑于 2022-12-20
  • C语言扫雷

    显示的数字就是周围一圈雷的数量 思路 一.游戏前 1.制作游戏首页 2.进入游戏 二.游戏中 1.创建两个数组,分别用作埋雷区(不对玩家展示)和展示区(面向玩家) 2.布置雷 3.排查雷和统计雷的数量 4. 看到首页后,会做出相应选择 1.选择1,进入game(),游戏开始 2.选择2,打印“退出游戏”,同时while中条件为假,退出循环 3.输入其他数据,打印“错误”,但不退出循环 二.游戏中 我实现的扫雷游戏是 会影响统计结果 创建count接收返回值,将对应的show[x][y]赋值为count+‘0’(+‘0’的作用是将count的int类型转换为char) 至此,排查和统计雷的数量任务已经完成 4. continue跳过后续步骤,避免输入重复的坐标时,win+1也在发生,导致游戏提前结束 3.判断win是否等于71,如果是,打印游戏胜利信息,至此,game()函数的步骤i全部走完 小结 最基本的扫雷游戏

    17710编辑于 2026-01-13
  • 来自专栏HansBug's Lab

    1088: 扫雷Mine

    1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1635  Solved: 979 [Submit][Status ] Description 相信大家都玩过扫雷的游戏。 万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目。 Sample Input 2 1 1 Sample Output 2 HINT Source 题解:本来看到扫雷一下子就像到了那个大的不得了的扫雷数字图,然后这个还要DP求种类数,QAQ吓傻(HansBug 嗯哼^_X) 1 var  2    i,j,k,l,m,n:longint;  3    a,b,c:array[0..20000] of longint;  4 function doit(x:longint

    1.3K70发布于 2018-04-10
  • 来自专栏日志随记

    Java扫雷源码

    编译软件:IntelliJ IDEA / Eclipse 环境: JDK1.5以上 介绍:重写了一遍扫雷,代码更加规范,修复了一些小bug,优化了部分代码的算法,将各等级英雄榜独立 运行效果图 image.png

    1.4K40编辑于 2022-05-27
  • 来自专栏番茄_C语言

    扫雷附展开

    假设做一个9*9的扫雷游戏,我们同样只是创建了一个9*9的棋盘,那么当我们想要排查那些边界处的雷时是否会造成越界错误呢? 这么一想,是否创建一个11*11的棋盘来实现9*9的扫雷游戏更好呢? 再根据扫雷游戏的内容,我们不难想出创建出两块棋盘来实现游戏会更加简单 一块棋盘则用来展示给玩家 另一块棋盘放置炸弹并在这个棋盘上进行是否有炸弹的判定 可以理解为一个是花架子用来看的,另一个才是真正用来做事的 + boomboard[bc_i - 1][bc_j + 1] + boomboard[bc_i - 1][bc_j - 1] - 8 * '0'; return a; } 3.3排雷判定 4种情况 = '*' && i <= ROW && j <= COL) { printf("该坐标已经排查过了\n"); } (4)非法输入 printf("请输入坐标,中间有空格\n"); scanf } } else { printf("语法错误,请重新错入\n"); } } if (win == ROW * COL - b_count) { printf("恭喜扫雷成功

    95610编辑于 2024-01-19
  • 来自专栏数据库相关

    sublime和vim 设置tab为4个空格

    对于学习Python编程而言,一个好的IDE是必不可少的,python对于代码缩进有很高的要求,一般都是4个空格缩进。 对于vim而言,我们只要vim .vimrc 加上下面2行代码即可: set ts=4 set expandtab 对于sublime而言,需要Preferences -> Settings, 加上下面 2行代码即可: "tab_size": 4, "translate_tabs_to_spaces": true, 如下图所示: ?

    1.3K20发布于 2019-09-18
  • 来自专栏tkokof 的技术,小趣及杂念

    MiniGame 之 扫雷实现

    本文是 扫雷(MiniGame) 的一个实现样例(使用 Unity/C#),主要以代码为主,辅以一点简单的注解 实现 样例中的扫雷实现主要是两个类型(BombGame 和 BombGrid),下面是完整代码 } } } } #endregion } 注解 BombGame 实现游戏的主体逻辑, BombGrid 实现扫雷的格子表现和操作 在一般的程序开发中(不仅仅是游戏开发),逻辑与表现的分离是一种较好的开发原则(MVC 模式是一种相关的体现),如果以上面的代码为例来说的话, BombGrid 的实现应该尽量不要涉及扫雷的实际游戏逻辑

    87120发布于 2021-09-10
  • 来自专栏学习

    【C语言】扫雷游戏

    扫雷介绍 扫雷游戏大家都不陌生,1992年4月6日,扫雷和纸牌、空当接龙等小游戏搭载在Windows 3.1系统中与用户见面,主要目的是让用户训练使用鼠标。 胜利条件:你需要在不点错雷的情况下尽可能快的将所有的雷都标记出来,如果你点错,就得重新开始,所以扫雷也有一定的运气成分。 那么如何让我们实现9*9扫雷代码那 设计思路: 1.建立菜单函数和game函数,跟之前我发的井字棋代码一样,所以第一个步骤我就跳过了哈哈哈 2.首先我们需要两个数组arr1和arr2储存两个棋盘的信息, 但存在边角也有可能是雷的情况来计算,所以实际数组行ROW和列COL需要各扩大两行两列,所以实际数组行ROWS和列COLS是11, 3.声明并定义一个函数chu,用来初始化俩棋盘,arr1初始化全为‘0’,arr2初始化全为‘*’ 4. [COLS], int row, int col)//打印棋盘函数定义 { int i = 0; int j = 0; printf("-----------------------------扫雷游戏

    1.2K10编辑于 2024-09-25
  • 来自专栏C/C++葵花宝典

    扫雷游戏(C语言)

    一、前言: 用C语言完成扫雷游戏对于初学者来说,难度并不是很大,而且通过编程这个小游戏,会让你对函数调用,分支循环,连续输入等有很好的掌握,该过程并不涉及指针及以后的内容。 二、游戏规则: 扫雷游戏规则十分简单,比如9*9网格中,就是在81个网格中找到其中的10颗雷,并不被雷炸死。 ,你应该能看出来我们实现这个游戏的逻辑是先打印出菜单,告诉你不同的选择,然后通过你的选择来判断是否进入游戏,所以游戏大体分成以下几步: 1、打印菜单 2、初始化棋盘 3、随机布置十颗雷 5、打印棋盘 4、 ; for (j = 1; j <= row; j++) { printf("%c ", board[i][j]); } printf("\n"); } } 运行后结果如下: 4、 Printboard(show, ROW, COL); wulei--; } } else printf("此坐标不存在,请重新输入\n"); } } 用C语言解决扫雷游戏还是非常有意思的

    1.3K10编辑于 2024-06-14
  • 来自专栏程序源代码

    Python开源扫雷游戏

    概述内容 Python WxPython开源扫雷游戏PyMine新版1.4有少量API修改,并移植至Python 3.6和wxPython 4.0.3。 本例为开源扫雷游戏PyMine 使用Python语言和WxPython UI框架 本例移植自本人开源例程JMine 请在程序所在目录使用python PyMine.py启动例程。

    2.8K51发布于 2019-03-14
领券