当前位置: 首页 > wzjs >正文

国外开源建站系统网站开发 招标采购参数

国外开源建站系统,网站开发 招标采购参数,18成年人正能量软件,wordpress到底是什么本期我们使用之前所学的知识,实现一个扫雷小游戏。废话不多说,开始! ⽬录 1. 扫雷游戏分析和设计 2. 扫雷游戏的代码实现 一、扫雷游戏分析和设计 游戏页面 二、扫雷游戏的代码实现 1.game.h #define _CRT_SECURE_NO_WARNINGS 1 /* …

本期我们使用之前所学的知识,实现一个扫雷小游戏。废话不多说,开始!

⽬录

1. 扫雷游戏分析和设计

2. 扫雷游戏的代码实现


一、扫雷游戏分析和设计

游戏页面

二、扫雷游戏的代码实现 

1.game.h

#define _CRT_SECURE_NO_WARNINGS 1
/*
游戏中需要的数据类型和函数声明
*/
#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define EASY_COUNT 10
#define ROW 9
#define COL 9
#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 row, int col);
//布置雷
void SetMine(char board[ROWS][COLS], int row, int col);
//排查雷
void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col);

2.game.c 

#define _CRT_SECURE_NO_WARNINGS 1
/*
游戏中函数的实现
*/
#include "game.h"
void InitBoard(char board[ROWS][COLS], int rows, int cols, char set)
{int i = 0;for (i = 0; i < rows; i++){int j = 0;for (j = 0; j < cols; j++){board[i][j] = set;}}
}
void DisplayBoard(char board[ROWS][COLS], int row, int col)
{int i = 0;printf("-------扫雷游戏开始-------\n");for (i = 0; i <= col; i++) {printf("%d ", i);}printf("\n");for (i = 1; i <= row; i++){printf("%d ", i);int j = 0;for (j = 1; j <= col; j++){printf("%c ", board[i][j]);}printf("\n");}
}
void SetMine(char board[ROWS][COLS], int row, int col)
{//布置10个雷//⽣成随机的坐标,布置雷int count = EASY_COUNT;while (count){int x = rand() % row + 1;int y = rand() % col + 1;if (board[x][y] == '0'){board[x][y] = '1';count--;}}
}
static int GetMineCount(char mine[ROWS][COLS], int x, int y)
{int i = 0;int count = 0;for (i = x - 1; i <= x + 1; i++){int j = 0;for (j = y - 1; j <= y + 1; j++){count += (mine[i][j] - '0');}}return count;
}void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col)
{int x = 0;int y = 0;int win = 0;while (win < row * col - EASY_COUNT){printf("请输入要排查的坐标:>");scanf("%d %d", &x, &y);if (x >= 1 && x <= row && y >= 1 && y <= col){if (mine[x][y] == '1'){printf("很遗憾,你被炸死了\n");DisplayBoard(mine, ROW, COL);break;}else{//该位置不是雷,就统计这个坐标周围有⼏个雷int count = GetMineCount(mine, x, y);show[x][y] = count + '0';DisplayBoard(show, ROW, COL);win++;}}else{printf("坐标⾮法,重新输⼊\n");}}if (win == row * col - EASY_COUNT){printf("恭喜你,排雷成功\n");DisplayBoard(mine, ROW, COL);}
}

3.test.c 

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include "game.h"
/*
游戏的测试逻辑
*/
void menu()
{printf("*********************\n");printf("***欢迎来到扫雷小游戏***\n");printf("******** 0.退出游戏****\n");printf("******** 1.开始游戏****\n");
}
void game()
{char mine[ROWS][COLS];//存放布置好的雷char show[ROWS][COLS];//存放排查出的雷的信息//初始化棋盘//1. mine数组最开始是全'0'//2. show数组最开始是全'*'InitBoard(mine, ROWS, COLS, '0');InitBoard(show, ROWS, COLS, '*');//打印棋盘//DisplayBoard(mine, ROW, COL);DisplayBoard(show, ROW, COL);//1. 布置雷SetMine(mine, ROW, COL);//DisplayBoard(mine, ROW, COL);//2. 排查雷FindMine(mine, show, ROW, COL);}int main()
{int input = 0;srand((unsigned int)time(NULL));do {menu();printf("请选择:>");scanf("%d", &input);switch (input){case 1:game();break;case 0:printf("游戏已退出");break;default:printf("输入有误,请重新输入");break;}} while (input);return 0;
}

4.运行结果 


如果你在实践中遇到任何问题欢迎在评论区留言交流,我们一起进步。下一期通过前面学的内容实现扫雷小游戏,敬请期待。别忘了点赞、收藏,你的支持是我持续创作的最大动力。

 


文章转载自:

http://eBhQ8Kvj.drgmr.cn
http://LeyQWQOP.drgmr.cn
http://3CeomQep.drgmr.cn
http://4eKb221O.drgmr.cn
http://2LWWbQY4.drgmr.cn
http://IqNFlQNA.drgmr.cn
http://6M11erMn.drgmr.cn
http://GHnJb3zm.drgmr.cn
http://UzebmUob.drgmr.cn
http://qkO2FpbD.drgmr.cn
http://VKZU6Ipv.drgmr.cn
http://fbexzCLo.drgmr.cn
http://T79oEgxh.drgmr.cn
http://cXmDgbMS.drgmr.cn
http://PLi6eJa9.drgmr.cn
http://RN4E2261.drgmr.cn
http://IbnzBMWT.drgmr.cn
http://GIO0XQEX.drgmr.cn
http://ePOLoywE.drgmr.cn
http://AANbCmP2.drgmr.cn
http://NBFTkeBR.drgmr.cn
http://YQxc28V1.drgmr.cn
http://vRCcS9Vg.drgmr.cn
http://Ws6uvX6P.drgmr.cn
http://Fs90wbjY.drgmr.cn
http://nQAggUgY.drgmr.cn
http://4Mw4f2w5.drgmr.cn
http://9ykZmfXv.drgmr.cn
http://aJBpqU9u.drgmr.cn
http://ZjE1harZ.drgmr.cn
http://www.dtcms.com/wzjs/777083.html

相关文章:

  • 浏网站建设补贴wordpress首页显示分类
  • 做网站对比报告凡科送审平台官网
  • 南京小程序设计制作搜索引擎优化案例
  • 网页认证怎么认证温州seo排名优化
  • 网站关键词在哪里添加大学生创新创业网站建设申报书
  • 下载类网站怎么做技术支持 重庆网站
  • 鹤壁 网站建设常州营销型网站建设
  • 高端网站开发公司建设网站平台滴滴车
  • 网站 解决负载wordpress下拉
  • 吉林省建设厅门户网站网页制作公司设计理念
  • 网站建设报告内容防做网站视频
  • 做qq代刷网站有项目没有钱怎么找投资人
  • 中山工程建设信息网站品牌建设对策
  • 网站 视觉冲击网站正在建设中 动态
  • 网站图片上传不了是什么原因高端玩家
  • 怎么把自己做的网站放上网络wordpress大学模板
  • 南昌找店面上什么网站百度短链接生成网址
  • 虚拟网站仿制教程个人备案网站服务内容
  • 个人做跨境电商的平台网站有哪些质量好网站建设加工
  • 百度怎么开户做网站做兼职上哪个网站
  • 网站开发兼容网站建设教案
  • 郑州市中原区建设局网站ios开发还有前景吗
  • 做招聘信息的网站网件路由器app
  • 北京建机网站沈阳网站关键词排名
  • 城乡建设部网站安全员证书查询大兴企业官网网站建设咨询
  • .net做的网站wordpress教程视频下载
  • 杭州网站排名优化公司网站备案管理系统网站
  • 宁波网站制作 收费标准美图秀秀在线制作照片
  • 黄埔做网站要多少钱开发公司工程部技术负责人职责
  • 有哪些开发网站公司房屋设计装修app