1992年4月6日,扫雷搭载在Windows 3.1系统中与用户见面,主要目的是让用户训练使用鼠标。这个游戏的玩法很简单,有初级、中级、高级和自定义等模式,雷区中随机布置一定数量的地雷,玩家需要尽快找出所有不是地雷的方块,但不许踩到地雷。

text.c

#define _CRT_SECURE_NO_WARNINGS
#include "扫雷.h"
void menu()
{printf("************************\n");printf("*******  1 paly  *******\n");printf("*******  0 exit  *******\n");printf("************************\n");
}void Chushi(int One[Hang][Lie], int Two[Hanga][Liea])
{int i = 0;int j = 0;for (i = 0; i < Hang; i++){for (j = 0; j < Lie; j++){One[i][j] = '*';}}for (i = 0; i < Hanga; i++){for (j = 0; j < Liea; j++){Two[i][j] = 0;}}
}
void Zaolei(int Two[Hanga][Liea])
{srand((unsigned int)time(NULL));int i = 0;while(i < Leishu){int a = rand() % 9 + 1;int b = rand() % 9 + 1;if (Two[a][b] == 0){Two[a][b] = 1;i++;}}
}
void Zhanshi_1(int One[Hang][Lie])
{int i = 0;int j = 0;for (i = 0; i < 10; i++){printf("%d ", i);}printf("\n");for (i = 0; i < Hang; i++){printf("%d ", i + 1);for (j = 0; j < Lie; j++){printf("%c ", One[i][j]);}printf("\n");}
}
void Zhanshi_2(int Two[Hanga][Liea])
{int i = 0;int j = 0;for (i = 0; i < 10; i++){printf("%d ", i);}printf("\n");for (i = 1; i <= Hang; i++){printf("%d ", i );for (j = 1; j <= Lie; j++){printf("%d ", Two[i][j]);}printf("\n");}printf("\n");
}
void Zhao(int i, int j, int Two[Hanga][Liea], int One[Hang][Lie])//i ==> 1 ~ 9
{int shuzi = 0;if (Two[i - 1][j + 1] == 1)shuzi++;if (Two[i - 1][j] == 1)shuzi++;if (Two[i - 1][j - 1] == 1)shuzi++;if (Two[i][j + 1] == 1)shuzi++;if (Two[i][j - 1] == 1)shuzi++;if (Two[i + 1][j - 1] == 1)shuzi++;if (Two[i + 1][j] == 1)shuzi++;if (Two[i + 1][j + 1] == 1)shuzi++;One[i - 1][j - 1] = shuzi + 48;
}
int Xuan(int One[Hang][Lie],int Two[Hanga][Liea])
{int i = 0;int j = 0;while (1) {scanf("%d %d", &i, &j);if (One[i - 1][j - 1] != '*'){printf("\n该点已被选择 请重新输入\n");}elsebreak;}if (Two[i][j] == 0){Zhao(i, j, Two,One);return 1;}else if (Two[i][j] == 1){printf("\n您失败了\n");return 0;}
}
void game()
{int One[Hang][Lie];int Two[Hanga][Liea];Chushi(One, Two);//初始化Zaolei(Two);//造雷int a = 1;int win = 0;while (a) {Zhanshi_1(One);a = Xuan(One,Two);if(a == 1)win++;if (win == Hang*Lie-Leishu){printf("\nWin!!\n");break;}}
}

扫雷.h

#pragma once
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define Hang 9
#define Lie 9
#define Hanga 11
#define Liea 11
#define Leishu 10//10颗雷
void menu();
void Chushi(int One[Hang][Lie], int Two[Hanga][Liea]);
void Zaolei(int Two[Hanga][Liea]);
void Zhanshi_1(int One[Hang][Lie]);
void Zhanshi_2(int Two[Hanga][Liea]);
void Zhao(int i, int j, int Two[Hanga][Liea], int One[Hang][Lie]);//i ==> 1 ~ 9
int Xuan(int One[Hang][Lie], int Two[Hanga][Liea]);
void game();

扫雷.c

#define _CRT_SECURE_NO_WARNINGS
#include "扫雷.h"
int main()
{int input = 0;do{menu();scanf("%d", &input);switch (input){case 1:game();break;case 0:break;default:printf("\n输入错误 请重新输入\n");break;}} while (input);
}

游戏:扫雷【C语言】相关推荐

  1. 一步一步实现扫雷游戏(C语言实现)(三)

    使用WIN32API连接窗口 此项目相关博文链接 一步一步实现扫雷游戏(C语言实现)(一) 一步一步实现扫雷游戏(C语言实现)(二) 一步一步实现扫雷游戏(C语言实现)(三) 一步一步实现扫雷游戏(C ...

  2. Windows经典小游戏--扫雷精装版

    Windows经典小游戏–扫雷精装版 最开始玩的电脑游戏就是蜘蛛纸牌和扫雷了,那时候觉得很神奇的事情现在自己也可以做了.下面就展示一下C语言扫雷的代码. 首先创建一个"扫雷"的项目 ...

  3. c语言小游戏代码(c语言小游戏代码简单)

    c语言编写小游戏请提供俄罗斯方块,坦克大战之类的小游戏的程序的c 应该是做出方块函数 然后以 这个方块 为单位 绘制 俄罗斯方块的 积木图形 ,在制作游戏界面的时候 也以方块长度为单位长度绘制 二维数 ...

  4. “扫雷”C语言实现(含炸开效果)

    "扫雷"C语言实现(感染效果) game.h #include<stdio.h> #include<stdlib.h> #include<time.h ...

  5. python扫雷_自动扫雷 Python语言

    本文主要向大家介绍了自动扫雷 Python语言,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟 ...

  6. 飞机游戏在C语言程序的基本语句能完成功能的体会

    论飞机游戏在C语言程序的基本语句能完成功能的体会 一.题目:  射击类飞机游戏 二.目的:  通过c语言编写一个射击类的打飞机小游戏,可以通过键盘来进行游戏,操作方法是"a"&qu ...

  7. C语言习题:猜数字游戏(C语言随机数)

    C语言习题:猜数字游戏(C语言随机数) 需要了解C语言随机数的生成方法: 在C语言中比较常用的随机函数是 rand 函数,它可以随机的产生 0 ~ rand_max 的随机数,定义类型不同最大值也不同 ...

  8. 扫雷计算机教案,四年级上信息技术教案-游戏——扫雷辽师大版

    <四年级上信息技术教案-游戏--扫雷辽师大版>由会员分享,可在线阅读,更多相关<四年级上信息技术教案-游戏--扫雷辽师大版(2页珍藏版)>请在人人文库网上搜索. 1.第六课游戏 ...

  9. java赛马游戏,用JAVA语言实现赛马游戏

    用JAVA语言实现赛马游戏 用JAVA语言实现赛马游戏 在大二下半学期,学校举办了一场编程比赛.其中一个选题就是:用JAVA语言实现一个赛马游戏程序.此程序即为当时的参赛完成的程序. 程序界面风格在当 ...

  10. 游戏夜读 | 写游戏用什么语言?

    写几句题记 这个标题如果用英文表达,可能更贴切,比如:Beginning game programming,What language should I use? 用简洁的中文似乎表达不出重点. 之所 ...

最新文章

  1. 基于感知损失的实时风格迁移与超分辨率重建
  2. 查看SQL Server Resource Database以及修改系统表
  3. 项目四-用循环求(1)
  4. #软件更新#Visual Studio更新到16.3.8
  5. asp.net core 拦击器制作的权限管理系统DEMO
  6. SpringBoot集成Elasticsearch实现博客高亮搜索
  7. Docker(四) Dockerfile 详解
  8. 算法第四版练习题答案
  9. html 之 img hspace 和 vspace 属性
  10. Python-字符串str和json格式的转换
  11. 2022年AI领域有哪些重要突破?(附报告全文)
  12. 使用webpack将ES6转化ES5, Browerify
  13. Texture tiling
  14. 2023年医院常用医疗设备维修培训计划
  15. Superset 数据分析平台搭建及使用 1
  16. MSTP:多生成树协议
  17. 四川内江现天眼猫 额头正中间长眼睛
  18. 【Shell】执行shell脚本进入指定目录
  19. 国内汽车融资租赁ABN市场破冰 首单总注册额度20亿元花落易鑫
  20. 【自学宝典】自动化课程 / 西门子、三菱、欧姆龙PLC电气设计与编程

热门文章

  1. 连接Oracle时报错ora-01034与ORA-27101
  2. 关于死锁你了解多少,通过“让APP随手机壳改变颜色,程序员和产品经理大家”这一事,了解下死锁可好?
  3. varbinary转换成字符串
  4. android4.2 小红盒,不插电也能用!网红爆款:天猫精灵妙物“小红盒”投影仪评测...
  5. 计算机网络这么多,开发怎么理解五层网络结构体系好?
  6. 淘宝要社交:改变买家购买方式 取消商品排名(转载)
  7. mysql清除表数据
  8. 爱普生墨仓式打印机故障检查,卡纸,清洗打印头,补充墨水详解(非常实用)
  9. 恬淡,禅意里开出的花
  10. 任意转换横竖屏,巧用画面裁切功能批量剪辑视频