iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言版扫雷游戏怎么实现
  • 558
分享到

C语言版扫雷游戏怎么实现

2023-06-25 17:06:09 558人浏览 独家记忆
摘要

这篇文章主要介绍C语言版扫雷游戏怎么实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!用c语言做一个扫雷功能的简单实现,首先创建一个test.c来用于在写代码的途中测试扫雷代码,game.h来存放实现扫雷函数需要用到

这篇文章主要介绍C语言版扫雷游戏怎么实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

用c语言做一个扫雷功能的简单实现,首先创建一个test.c来用于在写代码的途中测试扫雷代码,game.h来存放实现扫雷函数需要用到的头文件,game.c来存放最终的成品。

首先用函数打印一个菜单,让玩家选择进行游玩扫雷游戏或者退出,考虑到玩家会输入1和2以外的数字,我们加上一个fefault,将菜单放入do-while循环中,while的结束条件为choose为0,玩家在结束一场游戏后可以重新走一边循环,保证用户在结束一把扫雷之后可以选择继续进行下一局或是退出游戏。

void menu(){ printf("**********\n"); printf("**1.play**\n"); printf("**0.quit**\n"); printf("**********\n");} void test(){ int choose; do {  menu();  printf("请进行你的选择");  scanf("%d", &choose);  switch (choose)  {  case 1:   printf("游戏开始\n");   break;  case 2:   printf("游戏退出\n");  default:   printf("选择错误,请重新选择\n");  } } while (choose);}

在case1中加入game()函数来进行扫雷游戏的实现。扫雷有雷的布置和雷的扫,首先来实现雷的布置,用二维数组实现一个9x9的棋盘,通过建立两个棋盘来实现信息的交互,一个棋盘hid放雷的布置情况,还有一个棋盘show来将信息呈现给玩家。因为show棋盘需要将用户扫过区域周围八个格子雷的数量写出来,如果定义一个【9】【9】的数组就会发生越界,因此两个数组都定位为11x11,为了方便写,宏定义col=9 row=9 COL=col+2 ROW=row+2。初始化show数组全为*,hid数组全为0

void SetBoard(char board[ROW][COL], int r, int c, char set){ for (int i = 0; i < r; i++) {  for (int j = 0; j < c; j++)  {   board[i][j] = set;  } }} void ShowBoard(char board[ROW][COL],int r,int c){ for (int a = 0; a <= r; a++) {  printf("%d ", a); } printf("\n"); for (int i = 1; i <= r; i++) {  printf("%d ", i);  for (int j = 1; j <= c; j++)  {   printf("%c ", board[i][j]);  }  printf("\n");   }}

接下来实现雷的随机插入,随机生成两个一到九的整数下x,y,添加一个count计数器,如果当前hid[x][y]为字符0 则hid[x][y]为字符0,count计数器加一

srand((unsigned int)time(NULL)); void SetBoob(char hid[ROW][COL],int rw,int c){ int count = 0; for (int i = 0; count <= 9; i++) {  int x = rand() % row + 1;  int y = rand() % col + 1;  if (hid[x][y] == '0')  {   hid[x][y] = '1';   count = count + 1;  } }}

这样雷就布置好了,接下来是玩家排雷的过程。

用while(1)做一个一直重复的循环,玩家输入行和列x,y,程序将hid[x][y]与字符‘1'对比,若踩雷则跳出循环显示游戏结束并打印hid棋盘让玩家看到雷的位置,若没踩雷show[x][y]变成周围八个格子的地雷个数并打印show棋盘。因为玩家可能输入1~9之外的数,因此要用if函数限制x,y的大小。

统计hid【x】【y】周围的雷的个数可以通过将周围的字符全部相加再减去八个字符0来实现

void CountBoob(char hid[ROW][COL], int x, int y){ int count; count = hid[x - 1][y - 1] + hid[x][y - 1] + hid[x + 1][y - 1] + hid[x - 1][y] + hid[x + 1][y] + hid[x - 1][y + 1] + hid[x][y + 1] + hid[x + 1][y + 1] - 8 * '0'; return count;}void FindBoob(char hid[ROW][COL], char show[ROW][COL], int r, int c){ int x, y; while (1) {  printf("请输入行和列");  scanf("%d %d", &x, &y);  if (x >= 1 && x <= row && y >= 1 && y <= col)  {   if (hid[x][y] == '1')   {    printf("游戏结束\n");    ShowBoard(hid, row, col);    break;   }   else   {    int n = CountBoob(hid, x, y);    show[x][y] = n+'0';    ShowBoard(show, row, col);   }  }  else  {   printf("输入错误坐标请重新输入");  } }}

后期我在扫雷过程中加入了一个计数器count,每扫一个无雷区域则count加一当count等于71时打印游戏胜利并展示hid棋盘跳出循环。

将所有的函数放入头文件,.c程序如下

#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h>#include <time.h>#include <stdlib.h>#include "game.h" int main(){ int choose; srand((unsigned int)time(NULL)); do {  menu();  printf("请进行你的选择");  scanf("%d", &choose);  switch (choose)  {  case 1:   printf("游戏开始\n");   game();   break;  case 0:   printf("游戏退出\n");   break;  default:   printf("选择错误,请重新选择\n");  } } while (choose);}

扫雷是如若周围没有雷,可以实现棋盘的展开,这个因为时间问题只能进行后期补充。

以上是“C语言版扫雷游戏怎么实现”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网其他教程频道!

--结束END--

本文标题: C语言版扫雷游戏怎么实现

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

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

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

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

下载Word文档
猜你喜欢
  • C语言版扫雷游戏怎么实现
    这篇文章主要介绍C语言版扫雷游戏怎么实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!用c语言做一个扫雷功能的简单实现,首先创建一个test.c来用于在写代码的途中测试扫雷代码,game.h来存放实现扫雷函数需要用到...
    99+
    2023-06-25
  • C语言版扫雷游戏
    本文实例为大家分享了C语言版扫雷游戏的具体代码,供大家参考,具体内容如下 1、思路 一、创建二维数组,来表示地图 每一个格子要表示的信息: 1、未翻开状态(草地)和已翻开状态(...
    99+
    2022-11-12
  • C语言版扫雷小游戏
    本文实例为大家分享了C语言版扫雷小游戏的具体代码,供大家参考,具体内容如下 一、游戏功能 1、显示该点周围雷的个数 2、第一次下子,不炸死 3、坐标周围没雷,可以实现展开 二、效果...
    99+
    2022-11-12
  • C语言怎么实现简易版扫雷游戏
    这篇文章将为大家详细讲解有关C语言怎么实现简易版扫雷游戏,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。C语言是什么C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易...
    99+
    2023-06-14
  • C语言实现简易版扫雷游戏
    本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下 这个小项目源自两个月前学数组的时候,由于觉得比较重要,想记录一下。 首先,大概的思路是要做出两个二维数组充...
    99+
    2022-11-12
  • C语言版简单扫雷游戏
    本文实例为大家分享了C语言版的简单扫雷游戏,供大家参考,具体内容如下 思想 我们在设计的时候,首先将其分为三个部分,分别为头文件game.h游戏界面及主要实现的功能函数部分test....
    99+
    2022-11-12
  • C语言实现扫雷小游戏(扩展版)
    本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供大家参考,具体内容如下 实现的拓展功能如下: 1.设置游戏难度等级2.保证玩家在第一把踩雷后不被炸死3.若排雷的地方无雷,自动扩...
    99+
    2022-11-13
  • C语言实现扫雷小游戏简单版
    本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供大家参考,具体内容如下 在vs2019创建新项目,然后添加两个源文件test.c和game.c,接着创建一个头文件game.h。...
    99+
    2022-11-12
  • C语言怎样实现扫雷游戏
    这篇文章主要介绍了C语言怎样实现扫雷游戏,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。概述扫雷是一款大众类的益智小游戏。游戏目标是根据点击格子出现的数字找出所有非雷格子,同时...
    99+
    2023-06-15
  • C语言怎么实现扫雷小游戏
    本篇内容介绍了“C语言怎么实现扫雷小游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供...
    99+
    2023-06-20
  • 用C语言实现扫雷游戏
    用C语言实现扫雷游戏,因为代码会比较多,所以采用多文件的方式,使代码看起来更好。 一.main.c 在主调函数中首先要提供一个给用户选择的界面,在这里我们假定选择1为开始游戏,0为退...
    99+
    2022-11-12
  • C语言实现递归版扫雷游戏实例
    目录思路清晰的逻辑菜单棋盘布置雷排雷判断输赢text.c实现game.c实现game.h实现递归部分详解总结思路 清晰的逻辑 为方便将其分为三个文件:text.c(测试) game....
    99+
    2022-11-13
  • C语言数组怎么实现扫雷游戏
    本篇内容主要讲解“C语言数组怎么实现扫雷游戏”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言数组怎么实现扫雷游戏”吧!1、扫雷是什么?百度百科:《扫雷》是一款大众类的益智小游戏,于1992年...
    99+
    2023-06-30
  • C语言编程怎么实现扫雷游戏
    这篇文章主要讲解了“C语言编程怎么实现扫雷游戏”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言编程怎么实现扫雷游戏”吧!在我们熟知的扫雷中,我们点击小方块,小方块要么出现数字,要么遇到地...
    99+
    2023-06-20
  • 怎么用C语言实现扫雷小游戏
    这篇文章主要讲解了“怎么用C语言实现扫雷小游戏”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用C语言实现扫雷小游戏”吧!具体内容如下经典扫雷游戏规则:当玩家点击游戏区域,该处周围的八个位...
    99+
    2023-06-25
  • 利用C语言实现扫雷游戏
    通过一段时间的C语言学习,想必小伙伴们也想跃跃欲试的编写一些小程序,这个扫雷简易游戏,非常适合C语言初学者去实践。 实现扫雷,首先要有两个棋盘,一个棋盘放置着雷的信息,另个用于展示到...
    99+
    2022-11-12
  • 使用C语言实现扫雷游戏
    目录一、游戏介绍二、实现模块三、实现原理四、实现逻辑五、全部代码六、运行结果本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下 一、游戏介绍 扫雷游戏是在一个...
    99+
    2022-11-13
    C语言 扫雷
  • 用C语言实现扫雷小游戏
    本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供大家参考,具体内容如下 1. 规则 随便点一个格子,会有一块,上面的数字就代表数字周围八个格子会有几个雷,是1他周围就只有1个雷...
    99+
    2022-11-12
  • C语言编程实现扫雷游戏
    本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下 在我们熟知的扫雷中,我们点击小方块,小方块要么出现数字,要么遇到地雷。我打算,使用数组的方式来完成扫雷游戏...
    99+
    2022-11-12
  • C语言数组实现扫雷游戏
    本文实例为大家分享了C语言数组实现扫雷游戏的具体代码,供大家参考,具体内容如下 游戏界面展示: 一开始菜单界面: 选择 0 退出程序: 选择 1 开始游戏: 输入要排查雷的坐标...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作