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

浏览小城镇建设的网站怎样做好网络推广呀

浏览小城镇建设的网站,怎样做好网络推广呀,网站建设用户调查,如何用phpstudy做网站本期我们使用之前所学的知识,实现一个扫雷小游戏。废话不多说,开始! ⽬录 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://www.dtcms.com/wzjs/384066.html

相关文章:

  • 四川做网站公司哪家好太原seo排名外包
  • 东莞网站建设推广公司哪家好台州做优化
  • php做的网站代码上海网站制作推广
  • 缙云网站建设公司关键词排名优化
  • 网站建设疑问免费外链网盘
  • 昆明网站设计电话如何推广网址链接
  • 褚橙的网站建设网络推广外包一年多少钱
  • 新乐企业网站建设镇江市网站
  • 网站口碑推广泉州全网营销
  • 丽江市住房和城乡建设局网站摘抄一则新闻
  • 建设四川网站软文代写费用
  • 公众号做 视频网站谷歌seo招聘
  • 济南做网站优化哪家好国产免费crm系统有哪些在线
  • 众筹网站开发网站的优化和推广方案
  • 和镜像网站做友链百度有什么办法刷排名
  • 做网站首页文字排版技巧企业网站的推广方法有哪些
  • 把自己的网站卖给别人后对方做违法百度站长平台网址
  • 网站建设什么因素最重要性引流推广平台有哪些
  • 山东网站建设电话推特是谁的公司
  • 网站建设 趋势免费写文案神器
  • 一起做网站欧洲站推广公司产品
  • 网站综合开发怎么做什么是软文
  • 网站快速优化排名百度手机助手下载免费安装
  • 济宁网站建设 帮站最新新闻热点大事件
  • 泰州高端网站建设优化大师平台
  • 企业宣传网站源码百度推广代理商返点
  • 网站建设与设计方案百度推广怎么收费的
  • 做网站个网站要多少钱荆门网站seo
  • 网站建设多少钱十大免费无代码开发软件
  • 工程建设室内涂料招投标网站哪里能买精准客户电话