C语言代码实现简易扫雷
本文实例为大家分享了C语言代码实现简易扫雷的具体代码,供大家参考,具体内容如下
源.c代码如下:
#define_CRT_SECURE_NO_WARNINGS #include"Game.h" voidGame() { //创建两个雷区,一个记录雷,一个展示给玩家 charmine[ROWS][COLS]={0}; charshow[ROWS][COLS]={0}; //初始化两个雷区 Init_board(mine,ROWS,COLS,'0'); Init_board(show,ROWS,COLS,'*'); //打印雷区 Prin_board(show,ROW,COL); //布置地雷 PlaceMine(mine,ROWS,COLS); //开始扫雷 FoundMine(mine,show,ROW,COL); } intmain() { srand((unsignedint)time(NULL)); //打印菜单 intinput=0; printf("**********************************\n"); printf("*******1.play0.exit*******\n"); printf("**********************************\n"); do { printf("请选择:\n"); scanf("%d",&input); switch(input) { case1: Game(); printf("再来一局请输入1,退出请按0\n"); break; case0: printf("退出游戏\n"); break; default: printf("请输入1或0:\n"); break; } }while(input); return0; }
Game.h代码如下:
#include#include #include #defineROWS11 #defineCOLS11 #defineROWROWS-2 #defineCOLCOLS-2 #defineEASY10 voidInit_board(charboard[ROWS][COLS],introws,intcols,charset); voidPrin_board(charboard[ROWS][COLS],introw,intcol); voidPlaceMine(charboard[ROWS][COLS],introw,intcol); voidFoundMine(charboard1[ROWS][COLS],charboard2[ROWS][COLS],introw,intcol);
Game.c代码如下:
#define_CRT_SECURE_NO_WARNINGS #include"Game.h" intSum(charboard[ROWS][COLS],intx,inty) { inttem=y;//备份y的值,方便循环中初始化y值 //(x-1,y-1)(x-1,y)(x-1,y+1) //(x,y-1)(x,y)(x,y+1) //(x+1,y-1)(x+1,y)(x+1,y+1) inti=0,j=0; intsum=0; for(i=0;i<3;i++,x++) { for(j=0,y=tem;j<3;j++,y++) { sum+=board[x-1][y-1]; } } sum=sum-8*(int)'0'; returnsum; } voidInit_board(charboard[ROWS][COLS],introws,intcols,charset) { inti=0,j=0; for(i=0;i=1&&x<=row&&y>=1&&y<=col) { if(board1[x][y]=='1') { printf("游戏结束,你踩雷了\n"); break; } else { board2[x][y]=Sum(board1,x,y); Prin_board(board2,ROW,COL); } } else printf("坐标非法\n"); } if(board1[x][y]!='1') printf("恭喜你完成游戏!\n"); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。