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

网站推广包年宽屏网站欣赏

网站推广包年,宽屏网站欣赏,电子商务网络安全,三河建设厅公示网站设计总体思路 实现游戏可以一直玩#xff0c;先打印棋盘#xff0c;玩家和电脑下棋#xff0c;最后分出胜负。 如果编写较大的程序#xff0c;我们可以分不同模块 例如这个扫雷#xff0c;我们可以创建三个文件 分别为#xff1a; game.h 函数的声明game.c 函数的… 设计总体思路 实现游戏可以一直玩先打印棋盘玩家和电脑下棋最后分出胜负。 如果编写较大的程序我们可以分不同模块 例如这个扫雷我们可以创建三个文件 分别为 game.h     函数的声明game.c     函数的实现test.c        测试游戏逻辑 一、打印游戏菜单界面 首先要有开始界面并且有选项选择开始你的游戏代码以及效果图如下 void menu() {printf(*********************************************\n);printf(************* 1. play *********\n);printf(************* 0. exit *********\n);printf(*********************************************\n); }int main() {srand((unsigned int)time(NULL)); //随机数 无符号整型 时间戳 //头文件stdlib.h time.hint input 0;do {menu(); //先打印菜单printf(请选择:); //选项选择scanf(%d, input);switch(input){case 1:game();break;case 0:printf(退出游戏\n);break;default:printf(选择错误重新选择\n);break;}} while (input);return 0; } 二、初始化棋盘 test.c void game() {//mine数组是专门存放布置好的雷的信息char mine[ROWS][COLS] {0};//show数组是专门存放排查出的雷的信息char show[ROWS][COLS] {0};//初始化棋盘InitBoard(mine, ROWS, COLS, 0);//0InitBoard(show, ROWS, COLS, *);//* } game.c void InitBoard(char board[ROWS][COLS], int rows, int cols, char set) {int i 0;int j 0;for (i 0; i rows; i){for (j 0; j cols; j){board[i][j] set; #因为两次调用数组填充不同set(0,*)}} } 三、打印棋盘 test.c //打印棋盘 DisplayBoard(show, ROW, COL); //打印show数组 game.c void DisplayBoard(char board[ROWS][COLS], int row, int col) {int i 0;int j 0;printf(******* 扫雷 *******\n);for (j 0; j col; j){printf(%d , j);}printf(\n);for (i 1; i row; i){printf(%d , i);for (j 1; j col; j){printf(%c , board[i][j]);}printf(\n);} } 四、布置雷 test.c //布置雷 SetMine(mine,ROW,COL); game.c void SetMine(char mine[ROWS][COLS], int row, int col) {int count EASY_COUNT;while (count){//rand()随机生成范围0-32767int x rand() % row 1;int y rand() % col 1;if (mine[x][y] 0){mine[x][y] 1;count--;}} } 五、排查雷 test.c //排查雷 FindMine(mine,show,ROW,COL); game.c int GetMineCount(char mine[ROWS][COLS], int x, int y) {return (mine[x - 1][y] mine[x - 1][y - 1] mine[x][y - 1] mine[x 1][y - 1] mine[x 1][y] mine[x 1][y 1] mine[x][y 1] mine[x - 1][y 1] - 8 * 0); }void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col) {int x 0;int y 0;int win 0;while (winrow*col-EASY_COUNT){printf(请输入要排查的坐标:);scanf(%d %d, x, y);if (x 1 x row y 1 y col){if (show[x][y] *){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);}}else{printf(排查的坐标非法请重新输入\n);}}if (win row * col - EASY_COUNT){printf(恭喜你排雷成功\n);DisplayBoard(mine, ROW, COL);} } 六、最后整理代码完整代码 game.h #includestdio.h #includestdlib.h #includetime.h//初始化棋盘 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 mine[ROWS][COLS], int row, int col);//排查雷 void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col); game.c #define _CRT_SECURE_NO_WARNINGS 1 #includegame.hvoid InitBoard(char board[ROWS][COLS], int rows, int cols, char set) {int i 0;int j 0;for (i 0; i rows; i){for (j 0; j cols; j){board[i][j] set;}} }void DisplayBoard(char board[ROWS][COLS], int row, int col) {int i 0;int j 0;printf(******* 扫雷 *******\n);for (j 0; j col; j){printf(%d , j);}printf(\n);for (i 1; i row; i){printf(%d , i);for (j 1; j col; j){printf(%c , board[i][j]);}printf(\n);} }void SetMine(char mine[ROWS][COLS], int row, int col) {int count EASY_COUNT;while (count){//rand()随机生成范围0-32767int x rand() % row 1;int y rand() % col 1;if (mine[x][y] 0){mine[x][y] 1;count--;}} }int GetMineCount(char mine[ROWS][COLS], int x, int y) {return (mine[x - 1][y] mine[x - 1][y - 1] mine[x][y - 1] mine[x 1][y - 1] mine[x 1][y] mine[x 1][y 1] mine[x][y 1] mine[x - 1][y 1] - 8 * 0); }void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col) {int x 0;int y 0;int win 0;while (winrow*col-EASY_COUNT){printf(请输入要排查的坐标:);scanf(%d %d, x, y);if (x 1 x row y 1 y col){if (show[x][y] *){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);}}else{printf(排查的坐标非法请重新输入\n);}}if (win row * col - EASY_COUNT){printf(恭喜你排雷成功\n);DisplayBoard(mine, ROW, COL);} } test.c #define _CRT_SECURE_NO_WARNINGS 1 #includegame.hvoid menu() {printf(*********************************************\n);printf(************* 1. play *********\n);printf(************* 0. exit *********\n);printf(*********************************************\n); }void game() {//mine数组是专门存放布置好的雷的信息char mine[ROWS][COLS] {0};//show数组是专门存放排查出的雷的信息char show[ROWS][COLS] {0};//初始化棋盘InitBoard(mine, ROWS, COLS, 0);//0InitBoard(show, ROWS, COLS, *);//*//打印棋盘DisplayBoard(show, ROW, COL);//布置雷SetMine(mine,ROW,COL);//DisplayBoard(mine, ROW, COL);//排查雷FindMine(mine,show,ROW,COL);}int main() {srand((unsigned int)time(NULL)); //随机数 无符号整型 时间戳 //头文件stdlib.h time.hint input 0;do{menu(); //先打印菜单printf(请选择:); //选项选择scanf(%d, input);switch (input){case 1:game();break;case 0:printf(退出游戏\n);break;default:printf(选择错误重新选择\n);break;}} while (input);return 0; }七、游戏展示 个人建议第一个坐标填1 1这样比较好排 扩展 展开一片 标记是否是雷 计时器 记录剩余雷数量 展开一片满足下列条件 该坐标不是雷该坐标周围没有雷该坐标没有被排查过 满足就再遍历该坐标周围的八个坐标 本文是简单版的扫雷之后我会出一个进阶版的扫雷 希望会对你有所帮助
http://www.pierceye.com/news/311175/

相关文章:

  • 政务网站建设合同dw个人网站模板下载
  • 广州网站优化服务商企业网站建设一站式服务
  • 蓝海电商怎么做广州短视频seo哪家好
  • 泸州住房和城乡建设厅网站怎么自己做微网站吗
  • 做网站上传图片自己怎么建设网站首页
  • 西安空调销售网站建设wordpress 谷歌地图
  • 网站建设投标书范本wordpress防广告屏蔽
  • 设计个人网站的步骤建设工程合同无效的情形有哪些
  • 网站竞争对手的选定一般参考什么标准的建设网站长沙
  • 通州个人做网站营销型网站建设开发
  • 乌海市网站建设基于asp的网络课程网站开发
  • 关掉自己做的网站网页设计与制作服务公司
  • 视频相亲网站开发成本分类信息网站推广的意义
  • 域名和网站网站开发项目视频
  • 色流网站怎么做东营建筑信息网
  • 做能支付的网站贵吗网络安全工程师考证
  • 下载类网站开发条件环球资源网成立时间
  • 客户如何找到做网站宣传的律师免费虚拟主机空间
  • 点击网站出现微信二维码的链接怎么做网架制造厂
  • 服装网站建设环境分析一家专门做房产特卖的网站
  • 网站推广方式方法品牌建设的阶段和步骤是什么
  • 游戏开发平台seo的定义
  • 北京住房和城乡建设部网站官网可信赖的购物网站建设
  • 网站百度一直没有收录热狗网站关键词优化
  • 视频网站开发价格本地app开发公司电话
  • 网站设计风格介绍北京市建设工程信息网如何登录
  • 怎么创建一个属于自己的网站怎么制作做网站
  • 大学加强网站建设与管理的通知莱芜金点子租房信息港
  • 网站的营销与推广杭州五旋科技网站建设怎么样
  • 莱芜四中网站如何优化网站目录结构