iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >如何用C语言实现扫雷项目
  • 626
分享到

如何用C语言实现扫雷项目

2023-06-20 19:06:31 626人浏览 独家记忆
摘要

本篇内容介绍了“如何用C语言实现扫雷项目”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文实例为大家分享了C语言实现扫雷项目的具体代码,供大

本篇内容介绍了“如何用C语言实现扫雷项目”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

本文实例为大家分享了C语言实现扫雷项目的具体代码,供大家参考,具体内容如下

核心思想就是,雷的分布看作是“答案”,落子的棋盘看作是“考卷”;
答卷的同时,需要去对一下“答案”,这个位置有没有雷,有则BOOM!无则判断周围9宫格的雷的数量,返回这个字符打印至“考卷”上!
同时,为了防止数组越界,保证每一个格子都有九宫格,需要在行与列均多加2;
最后,判断输赢的标准:总格子数量-雷数 = 落子次数,即可判定胜利!

下面为测试模块:

#include"game.h"void meau() { printf("****************************\n"); printf("********* 1.play ***********\n"); printf("********* 0.exit ***********\n"); printf("****************************\n");}void game() { //定义二维数组 char mine[ROWS][COLS] = { 0 };//雷区 char show[ROWS][COLS] = { 0 };//展示区 //初始化棋盘  //打印棋盘 Initboard(mine,ROWS,COLS,'0'); //DisplayBoard(mine, ROW, COL); Initboard(show, ROWS, COLS,'*'); DisplayBoard(show, ROW, COL); //设置雷区 setboom(mine , ROW , COL); //DisplayBoard(mine, ROW, COL); //排雷逻辑 FindBoom(mine,show,ROW,COL);}void main() { int input = 0; srand((unsigned int)time(NULL)); do {  meau();  printf("请选择:\n");  scanf("%d",&input);  switch (input)  {  case 1:   //printf("开始扫雷\n");   game();   break;  case 0:   printf("退出游戏\n");   break;  default:   printf("输入错误,重新输入");   break;  } } while (input);}

下面为游戏头文件模块

#include<stdio.h>#include<stdlib.h>#include<time.h>#define ROW 9#define COL 9#define COUNT 80#define ROWS ROW+2#define COLS COL+2//初始化棋盘void Initboard(char board[ROWS][COLS], int rows, int cols,char set);//打印棋盘void DisplayBoard(char board[ROWS][COLS], int rows, int cols);//设置雷的数列并使其随机分布void setboom(char board[ROWS][COLS], int row, int col);//排雷逻辑void FindBoom(char mine[ROWS][COLS], char show[ROWS][COLS], int row ,int col);

下面是游戏程序模块

#include"game.h"//初始化棋盘void Initboard(char board[ROWS][COLS], int rows, int cols, char set) { for (int i = 0; i < rows; i++) {  for (int j = 0; j < cols; j++) {   board[i][j] = set;  }   }}//打印棋盘 只显示9*9 void DisplayBoard(char board[ROWS][COLS], int row, int col) { printf("--------------------\n"); //加入列号 for (int  i = 0; i <= col; i++) {  printf("%d  ", i); } printf("\n"); for (int i = 1; i <= row; i++) {  //加入行号  printf("%d  ",i);  for (int j = 1; j <= col; j++) {   printf("%c  ", board[i][j]);  }  printf("\n"); } printf("--------------------\n");}//设置雷的数列并使其随机分布void setboom(char board[ROWS][COLS], int row, int col) { printf("雷区分布\n");  int x = 0; int y = 0; //设置雷的个数 int count = COUNT; while (count) {  int x = rand() % row + 1; //坐标范围定在1~9   int y = rand() % col + 1;  if (board[x][y] != '1')  {   board[x][y] = '1';   count--;  } }}//获取雷数量int GetCount(char mine[ROWS][COLS],int x,int y) { int count = 0; for (int i = x-1; i <= x+1; i++) {  for (int j = y-1; j <= y+1; j++)  {   if (mine[i][j] == '1') {    count++;   }  } } return count;}//排雷逻辑void FindBoom(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col) { int x = 0; int y = 0; int count = 0; int win = 0; // 9*9-10 = 70 ; //判断是否排雷成功 是通过计算可落子位置与完成落子的次数之间关系来判断 while (win < row*col - COUNT) {  printf("请输入要排查的坐标:->\n");  scanf("%d%d", &x, &y);  if (x >= 1 && x <= row && y >= 1 && y <= col) {   if (mine[x][y] == '1') {    printf("你被BOOM BOOM BOOM了\n");    DisplayBoard(mine, ROW, COL);    break;   }   else {    //确定mine数组周围八个的雷格子数量    //返回这个数 至show[x][y];    count = GetCount(mine,x,y);    show[x][y] = count + '0';//count是整型,其阿斯克码 + 0的阿斯克码 就是具体字符的阿斯克码!  相当于转型了!    DisplayBoard(show,ROW,COL);    win++;   }  }  else {   printf("坐标非法,重新输入");  } } if (win == row * col - COUNT) {  printf("排雷成功\n"); }}

总结:扫雷游戏将二维数组运用凌厉精致,需要再多练习几次,将这种数组传参,数组操作,数组思维,数组与数组间的联动的思维 融入日常操作;

“如何用C语言实现扫雷项目”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 如何用C语言实现扫雷项目

本文链接: https://www.lsjlt.com/news/299194.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何用C语言实现扫雷项目
    本篇内容介绍了“如何用C语言实现扫雷项目”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文实例为大家分享了C语言实现扫雷项目的具体代码,供大...
    99+
    2023-06-20
  • C语言实现扫雷项目
    本文实例为大家分享了C语言实现扫雷项目的具体代码,供大家参考,具体内容如下 核心思想就是,雷的分布看作是“答案”,落子的棋盘看作是“考卷”; 答卷的同时,需要去对一下“答案”,这个位...
    99+
    2024-04-02
  • C语言实现扫雷小项目
    本文实例为大家分享了C语言实现扫雷小项目的具体代码,供大家参考,具体内容如下 游戏的基本设计流程如下: 菜单实现: void menu() { printf("#######...
    99+
    2024-04-02
  • C语言实现扫雷游戏小项目
    本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下 一.基本实现功能 1.建立一个游戏菜单 2.创建游戏盘,一个埋雷,一个显示。 3.打印游戏盘。 4.翻开坐...
    99+
    2024-04-02
  • C语言实现扫雷小项目代码分享
    这篇文章主要讲解了“C语言实现扫雷小项目代码分享”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言实现扫雷小项目代码分享”吧!游戏的基本设计流程如下:菜单实现:void menu...
    99+
    2023-06-20
  • 用C语言实现扫雷游戏
    用C语言实现扫雷游戏,因为代码会比较多,所以采用多文件的方式,使代码看起来更好。 一.main.c 在主调函数中首先要提供一个给用户选择的界面,在这里我们假定选择1为开始游戏,0为退...
    99+
    2024-04-02
  • C语言实现扫雷代码
    本文实例为大家分享了C语言实现扫雷的具体代码,供大家参考,具体内容如下 前言 扫雷实现的基本规划: 1、玩家可以自由选择进入和退出游戏2、玩家通过输入坐标来排雷3、排查雷给出提示4、...
    99+
    2024-04-02
  • 使用C语言实现扫雷游戏
    目录一、游戏介绍二、实现模块三、实现原理四、实现逻辑五、全部代码六、运行结果本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下 一、游戏介绍 扫雷游戏是在一个...
    99+
    2022-11-13
    C语言 扫雷
  • 用C语言实现扫雷小程序
    本文实例为大家分享了C语言实现扫雷小程序的具体代码,供大家参考,具体内容如下 扫雷程序的编写需要有清晰的思路,所以我们先要清楚扫雷的实现有几个功能模块让我们编写,再用主函数将功能结合...
    99+
    2024-04-02
  • 利用C语言实现扫雷游戏
    通过一段时间的C语言学习,想必小伙伴们也想跃跃欲试的编写一些小程序,这个扫雷简易游戏,非常适合C语言初学者去实践。 实现扫雷,首先要有两个棋盘,一个棋盘放置着雷的信息,另个用于展示到...
    99+
    2024-04-02
  • 用C语言实现扫雷小游戏
    本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供大家参考,具体内容如下 1. 规则 随便点一个格子,会有一块,上面的数字就代表数字周围八个格子会有几个雷,是1他周围就只有1个雷...
    99+
    2024-04-02
  • C语言如何实现一个扫雷程序
    本篇内容介绍了“C语言如何实现一个扫雷程序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!整个游戏设计中主要的函数为:1、初始化地雷棋盘和显示...
    99+
    2023-06-17
  • C语言如何实现简易扫雷游戏
    这篇文章主要介绍C语言如何实现简易扫雷游戏,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下一、想要达到的游戏功能:大家如果想编写一个游戏,应具备以下的步骤:了解游戏的规则   知道游戏应...
    99+
    2023-06-20
  • C语言实现扫雷小程序
    前言 《扫雷》是一款大众类的益智小游戏,于1992年发行。游戏目标是在最短的时间内根据点击格子出现的数字找出所有非雷格子,同时避免踩雷,踩到一个雷即全盘皆输。 多文件形式 在实现游戏...
    99+
    2024-04-02
  • 如何使用C语言代码实现扫雷游戏
    本篇内容主要讲解“如何使用C语言代码实现扫雷游戏”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用C语言代码实现扫雷游戏”吧!概述扫雷是一款大众类的益智小游戏。游戏目标是根据点击格子出现的数...
    99+
    2023-06-08
  • 如何使用C语言实现简易扫雷游戏
    这篇文章主要介绍了如何使用C语言实现简易扫雷游戏,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、头文件#define _CRT_SECURE_NO_WARNING...
    99+
    2023-06-26
  • 利用C语言如何实现一个扫雷游戏
    利用C语言如何实现一个扫雷游戏?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。菜单的实现代码:int main(){int input =&nb...
    99+
    2023-06-06
  • 使用C语言实现扫雷小游戏
    本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供大家参考,具体内容如下 游戏规则 在一个9*9的地图上一共有十个雷,翻开所有不是雷的位置 游戏即为胜利, 如果踩到雷,游戏结束 ...
    99+
    2024-04-02
  • C语言如何实现简单扫雷小游戏
    本篇内容主要讲解“C语言如何实现简单扫雷小游戏”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言如何实现简单扫雷小游戏”吧!前言今天学习了制作简易扫雷游戏,代码如下提示:以下是本篇文章正文内容...
    99+
    2023-06-20
  • C语言如何实现简易的扫雷游戏
    这篇文章给大家分享的是有关C语言如何实现简易的扫雷游戏的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下在正式讲内容之前先说一说扫雷游戏的规则游戏规则很简单,点击方格,如果是地雷,游戏失败,找到所有地雷游...
    99+
    2023-06-25
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作