伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

扫雷游戏

来源:本站原创 浏览:142次 时间:2022-02-09

本代码在VS2019中调试
1.主文件:

#include "1.h"void menu(void){printf("*****************************************\n");printf("*****    1.---------->开始          *****\n");printf("*****    0.---------->结束          *****\n");printf("*****************************************\n");}void game(void){//1.埋雷棋盘char ml[ROWS][COLS] = { 0 };//2.找雷棋盘 char zl[ROWS][COLS] = { 0 };//初始化csh(ml,ROWS,COLS,'0');//11*11csh(zl,ROWS,COLS,'*');//打印棋盘/=//display(ml, ROW, COL);//9*9display(zl, ROW, COL);//埋雷mailei(ml, ROW, COL);//打印棋盘/*display(ml, ROW, COL);*///找雷finemine(ml,zl,ROW,COL);}void text(void){ int num;srand((unsigned int)time(NULL));do{menu();printf("请输入数字用以确定是否进入游戏:(1/0)");scanf_s("%d", &num);switch (num){case 1:printf("即将进入游戏:----->\n");game();break;case 0:printf("即将退出游戏----����,����--->\n");Sleep(1000);system("cls");break;default:printf("输入错误,请重新输入\n");break;}} while (num);}int main(){text();return 0;}

2.调用函数文件:

#include "1.h"//棋盘初始化void csh(char ml[ROWS][COLS], int rows, int  cols, char m){int i, j;for (i=0;i<ROWS;i++){j = 0;for (j=0;j<COLS;j++){ml[i][j] = m;}}}//棋盘打印void display(char ml[ROWS][COLS], int row, int  col){int i, j;//打印行标for (i = 0; i <= row; i++){printf(" %d ", i);}printf("\n");for (i=1;i<=row;i++){printf(" %d ", i);j = 0;for (j=1;j<=col;j++){printf(" %c ", ml[i][j]);}printf("\n");}}void mailei(char ml[ROWS][COLS], int row, int col){int a, b;int count = EASY_LEI;while (count){a = rand() % row + 1;b = rand() % col + 1;if (ml[a][b] == '0'){ml[a][b] = '1';count--;}}}int hjkjj(char ml[ROWS][COLS], int x, int y){return ml[x - 1][y] + ml[x - 1][y - 1] + ml[x - 1][y + 1] + ml[x][y - 1] + ml[x][y + 1] + ml[x + 1][y - 1] + ml[x + 1][y] + ml[x + 1][y + 1] - 8 * '0';}void finemine(char ml[ROWS][COLS],char  zl[ROWS][COLS], int  row, int  col){int a, b;int num;num = 0;//输入值用以判断是否超过while (num < ROW * COL - EASY_LEI){printf("请输入要走的位置(例子:1 2一行二列):");scanf_s("%d %d", &a, &b);if(a>=1&&a<=ROW&&b>=1&&b<=COL){if (ml[a][b] == '1'){printf("不好意思你被炸死了\n");display(ml, ROW, COL);break;}else{int f = 0;//没被炸死;f = hjkjj(ml, a, b);zl[a][b] = f+'0';display(zl, ROW, COL);}num++;}else{printf("输入坐标非法,请重新输入!\n");}}if (num == ROW * COL - EASY_LEI){printf("You WIN!\n");}}

3.定义文件:(头文件)

#pragma once#include <stdio.h>#include <string.h>#include <math.h>#include <stdlib.h>#include <time.h>#include <windows.h>#define EASY_LEI 10        //定义埋雷的数量#define ROW 9#define COL 9#define ROWS ROW+3#define COLS COL+3void text(void);void menu(void);void game(void);void csh(char ml[ROWS][COLS],int rows,int  cols,char m);void display(char ml[ROWS][COLS], int row, int  col);void mailei(char ml[ROWS][COLS], int row, int col);void finemine(char ml[ROWS][COLS],char zl[ROWS][COLS],int  row,int  col);int hjkjj(char ml[ROWS][COLS], int x, int y);


  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net