该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

/* 里面涉及的知识主要是递归和数组 */

#include "stdio.h"

#include "conio.h"

int count=0;

void mark(int mobang[11][11],char xianxi[11][11],int x,int y)

{

xianxi[x][y]=' ';count++;

if((x-1)<1||(y-1)<1||(xianxi[x-1][y-1]==' '));else { if(mobang[x-1][y-1]!=0){xianxi[x-1][y-1]=' ';count++;} else mark(mobang,xianxi,x-1,y-1);}

if((x-1)<1||(xianxi[x-1][y]==' '));else { if(mobang[x-1][y]!=0){xianxi[x-1][y]=' ';count++;} else mark(mobang,xianxi,x-1,y);}

if((x-1)<1||(y+1)>9||(xianxi[x-1][y+1]==' '));else { if(mobang[x-1][y+1]!=0){xianxi[x-1][y+1]=' ';count++;} else mark(mobang,xianxi,x-1,y+1);}

if((y-1)<1||(xianxi[x][y-1]==' '));else { if(mobang[x][y-1]!=0){xianxi[x][y-1]=' ';count++;} else mark(mobang,xianxi,x,y-1);}

if((y+1)>9||(xianxi[x][y+1]==' '));else { if(mobang[x][y+1]!=0){xianxi[x][y+1]=' ';count++;} else mark(mobang,xianxi,x,y+1);}

if((x+1)>9||(y-1)<1||(xianxi[x+1][y-1]==' '));else { if(mobang[x+1][y-1]!=0){xianxi[x+1][y-1]=' ';count++;} else mark(mobang,xianxi,x+1,y-1);}

if((x+1)>9||(xianxi[x+1][y]==' '));else { if(mobang[x+1][y]!=0){xianxi[x+1][y]=' ';count++;} else mark(mobang,xianxi,x+1,y);}

if((x+1)>9||(y+1)>9||(xianxi[x+1][y+1]==' '));else { if(mobang[x+1][y+1]!=0){xianxi[x+1][y+1]=' ';count++;} else mark(mobang,xianxi,x+1,y+1);}

}

int main(void)

{

int mobang[11][11]={0};

char xianxi[11][11]={'*'};

int i,j;

int count1=0;

int zhonglei=0;

int flag1=0;

int flag2=0;

int choice1,choice2;

mobang[1][2]=mobang[2][7]=mobang[2][8]=9;

mobang[5][5]=mobang[6][4]=mobang[7][4]=9;

mobang[8][7]=mobang[9][1]=mobang[9][7]=9;

for(i=1;i<10;i++)

{

for(j=1;j<10;j++)

{

if(mobang[i][j]==9);

else {

if(mobang[i-1][j-1]==9) count1++;

if(mobang[i-1][j]==9) count1++;

if(mobang[i-1][j+1]==9) count1++;

if(mobang[i][j-1]==9) count1++;

if(mobang[i][j+1]==9) count1++;

if(mobang[i+1][j-1]==9) count1++;

if(mobang[i+1][j]==9) count1++;

if(mobang[i+1][j+1]==9) count1++;

mobang[i][j]=count1;

}

count1=0;

}

}

for(i=1;i<11;i++)

for(j=1;j<11;j++) xianxi[i][j]='*';

while(1)

{

printf("     1 2 3 4 5 6 7 8 9 ");

for(i=1;i<10;i++)

{

if(i!=1)printf("\n    ---------------------------\n %d|",i);else printf("\n    ===========================\n %d|",i);

for(j=1;j<10;j++)

{

if(xianxi[i][j]=='*')printf(" *|");

else

{

switch(mobang[i][j])

{

case 0: printf(" |");break;

case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8: printf("%2d|",mobang[i][j]);break;

case 9: printf(" #|");break;

default:;

}

}

}

}

if(zhonglei==1||count>=72)break;

printf("\n\n\n\n\nInput a number:");

count1=0;

flag1=0;

flag2=0;

while(1)

{

switch(count1)

{

case 0: {choice1=getchar(); if(choice1==10){ choice1=0;flag1=1; break;}}

case 1: {choice2=getchar(); if(choice2==10){ choice2=0;flag1=1; break;}}

default: if(getchar()=='\n') flag2=1;

}

if(flag1==1||flag2==1)break;

count1++;

}

if(flag1==1||choice1<49||choice1>57||choice2<49||choice2>57)continue;else {choice1-=48;choice2-=48;}

if(xianxi[choice1][choice2]==' ')continue;

if(mobang[choice1][choice2]==9){xianxi[choice1][choice2]=' ';zhonglei=1;}

else {

if(mobang[choice1][choice2]!=0) {xianxi[choice1][choice2]=' ';count++;}

else mark(mobang,xianxi,choice1,choice2);

}

}

if(zhonglei==1)printf("\n\n\n\nYou lose! GAME OVER!");

else printf("\n\n\n\nWell done, my hero! You win!");

getch();

return 0;

}

java扫雷随机地雷_原创扫雷(未添加随机分布地雷),想看就进来看下吧相关推荐

  1. SEO们,停下互点和伪原创,进来看下

    写这篇文章的目的在于,谈下我对seo 的见解.小编在这行业不久(其实我是做全网营销,SEO只是其中一部分),但是有自己独特的见解,希望能通过写这篇文章给同行或者相关人士的一些感悟.建议. 在做这行业的 ...

  2. 查看java线程是否退出_[原创]IDA调试阻止java线程异常退出

    IDA调试阻止java线程异常退出 最近在使用IDA调试分析某款产品遇见了一个头痛的问题,因为程序核心功能在native层实现的,所以主要的侧重点是分析so文件,但是在分析的时候总是出现java线程异 ...

  3. java配置多环境_[原创]多版本Java环境变量的配置

    起因:   偶然突发兴致, 收拾下自己的老T500电脑, 用来做个家庭开发用机. 应为每次装系统都有GHOST备份的习惯, 所以需要提前搭建好开发环境. 而且新装系统的目的之一, 也是想研究下Andr ...

  4. lisp图库不显示缩略图_[原创]在未安装过任何CAD版本的系统中,也能查看dwg文件的缩略图!...

    本帖最后由 作者 于 2008-4-26 22:27:02 编辑 引言------- 我的电脑原来安装了CAD2002版本,在资源管理器中(文件夹)是看不到CAD文件的缩略图的,可有一天我安装了CAD ...

  5. java读写word框架_[原创]java读写word文档,完美解决方案

    作项目的过程当中,常常须要把数据里里的数据读出来,通过加工,以word格式输出. 在网上找了不少解决方案都不太理想,偶尔发现了PageOffice,一个国产的Office插件,开发调用很是简单!比网上 ...

  6. java打开pdf文件_[原创]java在线打开PDF文档

    步骤一:(涉及到的工具) 访问:http://www.zhuozhengsoft.com/dowm/,从官网下载PageOffice for Java. 步骤二:(配置工程) 1. 解压PageOff ...

  7. java json 长度限制_[原创]Java中字符串、数组、集合及JSONArray的长度属性

    前言:数组没有length()这个方法,有length的属性.String有有length()这个方法. 1.String字符串 String str = "abcdefg"; s ...

  8. java swt 画按钮_向表中添加按钮(java swt)

    我正在尝试复制类似于此的UI: 我一直在关注如何创建表格每列中的按钮的作者说明(没有成功).我的项目与他的区别在于我正在尝试使用Tree而不是Table,而我正在使用eclipse TreeViewe ...

  9. python随机选择_在python中实现随机选择

    想从一个序列中随机抽取若干元素,或者想生成几个随机数. random 模块有大量的函数用来产生随机数和随机选择元素.比如,要想从一个序列中随机的抽取一个元素,可以使用random.choice() : ...

最新文章

  1. 架构师必备技能:Maven Archetype生成项目模板
  2. python 用两个栈实现一个队列
  3. u-boot移植第二弹——移植2012.10u-boot到RealARM210 cortex-A8开发板
  4. 在vue3+vite+ ts 项目中使用svg
  5. 微软NNI---AutoFeatureENG
  6. 在浏览器中在线尝试无服务器框架项目!
  7. 关于asp.net利用mono部署到Linux上的一些说明
  8. Redis 实现接口访问频率限制
  9. SpringCloud微服务注册调用入门教程
  10. AppStore ipa (苹果内购)笔记
  11. css-使不同大小的图片在固定大小的容器中居中
  12. 广州有这么一个无聊的人
  13. 深入理解ES6之——迭代器与生成器
  14. kali之搜狗输入法安装下载
  15. win10开机后底部任务栏无响应的修复方法
  16. 上瘾啦,又用 Python 制作销售数据可视化看板
  17. zzuli OJ 2331:小新同学的智商
  18. 照相机的成像原理,镜头和单反相机的认识
  19. 在线文档编辑插件——KindEditor
  20. Java相同类型的两个对象比较属性值,得到不同属性的名称和对应的值,附代码实例

热门文章

  1. 结婚被要求写代码,到底是怎么回事。
  2. VHDL电子密码锁设计
  3. linux oracle 01157,Oracle数据库启动时出现ORA-01157和ORA-01110问题
  4. 小波相干wtc matlab,实现时间序列的小波相干性分析,并画出图谱
  5. oracle 设置查询条数,SQL、MySQL、Oracle、 Sqlite、Informix数据库查询指定条数数据的方法...
  6. 新版kali安装beef-xss一大堆报错解决办法
  7. java 当一个文本框有值时另一个文本框置灰_【农行DevOps进行时】基于PaaS的持续集成/持续交付实践 | IDCF...
  8. pingfangsc字体_2020-iOS GUI-字体规范
  9. SSAS(分析服务)优化手册
  10. ios新手开发——toast提示和旋转图片加载框