Python求大神教,急大作业编的扫雷游戏

self.ROW = 8
self.LINE = 8
self.SCORE = 0 #扫雷得分
self.MineNum = 15 #地雷总数
self.xy_list= [[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]]

def iniData(self):
    '''x,y坐标初始状态值函数
       0-没有地雷;1-有地雷
    '''

    #游戏开始前所有数值归零
    for l in range(self.LINE):
        for r in range(self.ROW):
            self.xy_list[l][r]= 0

    Max = self.MineNum
    for x in range(self.LINE):
        for y in range(self.ROW):
            if 0 > Max:
                self.xy_list[x][y]= 0
            else:
                #为了增加地雷分布范围,选择0到4随机数
                if 1 == random.randint(0,4): 
                    self.xy_list[x][y]= 1
                    Max = Max - 1

求解释一下

0

1个回答

这个有注释很好理解啊!

 for x in range(self.LINE):
        for y in range(self.ROW):
            if 0 > Max:
                self.xy_list[x][y]= 0
            else:
                #为了增加地雷分布范围,选择0到4随机数
                if 1 == random.randint(0,4): 
                    self.xy_list[x][y]= 1
                    Max = Max - 1

这段代码  range(5)   # 0,1,2,3,4; 你这里是8即0至7;用来生成一个等差数组,作为标记地雷的二维数组的下标

if Max < 0  是判断雷有没有布晚,如果没有布完则继续布雷,没有雷则赋0值。
这段判断写的不是很好,可以替换一下
 if MAX > 0:
     if 1 == random.randint(0,4): 
           self.xy_list[x][y]= 1
            Max = Max - 1
else:
    break;

毕竟在一开始将所有的值都赋成0了,这里没必要重复。

``` if 1 == random.randint(0,4):
self.xy_list[x][y]= 1
Max = Max - 1

这个使用 该判断是为了将地雷分散开来不至于都(0,0)的角落连续分布。




0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python大作业扫雷游戏
python大作业扫雷游戏,呕心沥血的结晶啊,供大家参考使用。
新手求大神教
列表中表头数字怎么美化/
求大神教
[img=https://img-bbs.csdn.net/upload/201310/27/1382856615_667755.png][/img]想把div放进入itembox,可是listitem不让放
急求大神教一个问题
ResultSet rs = stmt.executeQuery("select seat_num,times from sys.seat_selection where sno = '"+sno+"' and data ='"+time+"' and times>="+hour);rn Log.d(TAG, "Onclick0:获取数据成功"+"select seat_num,times from sys.seat_selection where sno = '"+sno+"' and data ='"+date+"' and times>="+hour);rn if(rs.next())rn Log.d(TAG, "Onclick0: 进入循环");rn elsern Log.d(TAG, "Onclick0: wei进入循环");rn rn通过jdbc数据库连接成功,try、catch语句没有捕获错误,sql语句在数据库里执行有两行结果集返回,在执行rs.next()是为false,也就是直接执行的else的内容,想问一下为什么
c语言 求大神教
c语言 定义一个函数,传入一个数组,输出这个数组当中大于100的数
求大神教做一个自定义进度条
如题:rn图片如下:rn[img=https://img-bbs.csdn.net/upload/201512/17/1450342077_149402.png][/img]rnrn有相关的参考资料也可以的[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/2.gif][/img]
VC++ 游戏大作业
连连看C++源代码,程序里面使用基本windows 编程技术:菜单,位图,对话框,鼠标,键盘等。。。
大作业-数独游戏
vs2008winC# 大作业
设计模式大作业游戏
这是本人研究生期间完成的一次设计模式大作业,有关于设计模式的课程结课作业,设计模式总共23种,在这里我运用了6种设计模式设计了一款游戏,运用了c#编程语言,压缩包中含有项目的说明书,PPT,完整的源码,还有类图,帮助你理解,需要的话,可以参考一下
大神教教我
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.rn> Failed to create MD5 hash for file 'D:\Android\workspace\FJD\app\libs\android-support-v4.jar'.rn运行时出现在这个问题,怎么办啊
Java作业 刚学啥也不会 求大神教
创建一个整形一维数组。分别使用静态和动态初始化的方法,并打印各数组元素的值。
python大作业 模拟乒乓球游戏3p3b
为了应付python课写的大作业,有全的文档还有全部的代码~
python大作业
上海交通大学程序设计思想与方法大作业啊。
python大作业 battleship
Python大作业,内含代码文档,可以直接交。
python大作业(对对碰)
这是学习python和pygame一学期下编写的小游戏 里面有一些小技术的设计运用是比较花费心血的 毕竟水平有限 只是比较好的期末作业水平
C语言 投票系统设计 求大神教~
查找候选人 函数里 为什么只是一直显示没有您要查询的候选人    删除和修改 不用链表 甚至不用指针的话 能不能写 求教求手把手教 感激不尽。 #include #include #include #include #define DATA    candi[i].num,candi[i].name,&candi[i].age,candi[
图形图像大作业及大作业
1.Z-buffer消隐算法及实现 2. OpenGL颜色模型及应用 3. Bezier曲面与双三次B样条曲面的绘制与实现,交互式Bezier曲线的输入绘制程序实现 4.OPEN GL光照模型及应用 5.分形算法及应用——Koch曲线 6.图形学真实感画球的试验 phong模型实现 7.人机交互的体验 8.复杂3维场景,地图漫游的绘制
安装系统时分区的问题!求大神教
正常U盘操作的分区是这样的。rn[img=https://img-bbs.csdn.net/upload/201411/04/1415072076_54592.png][/img]rn[img=https://img-bbs.csdn.net/upload/201411/04/1415072086_12340.jpg][/img]rnrn但是我的U盘启动是这样的,rn[img=https://img-bbs.csdn.net/upload/201411/04/1415072119_103325.png][/img]rn[img=https://img-bbs.csdn.net/upload/201411/04/1415072111_975579.jpg][/img]
求大神教写SQL语句
数据库:mysqlrn表A (职务表)rnid role_namern1 数学老师rn2 语文老师rn3 班主任rn4 年级主任rnrn表B (人员表)rnid name(varchar) job_id(多个职务用逗号隔开)rn1 张三 1,3rn2 李四 2rn3 王五 3rnrn问题:SQL语句怎样写才能展示出以下结果集rn 编号(b_id) 姓名(b_name) 职务(job) rn 1 张三 数学老师,班主任
求大神教小弟编个小程序
想要弄个程序,能在后台自动把插进电脑的U盘拷贝下来而不会被察觉,最好是连任务管理器都察觉不到。以前网上下载过U盘间谍,发现里面给加了文件夹exe病毒,无语了。
求J2EE大作业
技术要求rn1、 数据库表不少于3个,且表之间必须存在关联。rn2、 页面设计布局合理,颜色使用恰当,风格统一,页面应不少于10个。rn3、 系统功能不少于6个,且能正确运行。rn4、 系统采用面向对象的方式设计,尽量使界面、业务、数据之间的耦合关系降低。rn5、 代码实现尽量使用事件处理、事务处理。rn6、 系统应对一些常见的异常进行适当的处理。rn7、 数据的操作以事务的方式实现,要求处理并发问题。rn用到jsp,javabean,soverlet,mvc等rn没什么分了给10分吧rn说有的话发我邮箱吧1182820876@qq.comrn我是菜鸟自己现在在琢磨网上购物系统怕到时交作业还没做好求一份做好了的,别让我自己改啊
求一份大作业
图书管理系统rn要求:有基本功能设计、接口设计、还有类图(UML和包图)设计等,类似软件需求+软件设计rn邮箱superbtl@163.com (注明CDSN账号)rn如果可用的话,支付200技术分rnrn多谢了
--求大神教小白一个zz的问题
这个项目怎么导入到eclipse里面.求解 这个项目怎么导入到eclipse里面.求解
求大神教怎么写出这个效果
[img=https://img-bbs.csdn.net/upload/201509/23/1442995123_806873.png][/img]
vc++ socket编程上的错误,求大神教
#include "stdafx.h"rn#include rn#includernusing namespace std;rnrn#pragma comment(lib,"ws2_32.lib")rnrnrnint _tmain(int argc, _TCHAR* argv[])rnrn WSADATA w;rn WORD ver=MAKEWORD(2,2);rn WSAStartup(ver,&w);rnrn SOCKET server;rn SOCKADDR_IN addr;rn addr.sin_family=AF_INET;rn addr.sin_port=(htons(12345));rn addr.sin_addr.S_un.S_addr=htonl(INADDR_ANY);rnrn server=socket(AF_INET,SOCK_STREAM,0);rn bind(server,(SOCKADDR*)&addr,sizeof(addr));rn listen(server,10);rnrn SOCKET client;rn rn cout<<"服务端已启动!\n";rn while(TRUE)rn rn if(client=accept(server,0,0)!=INVALID_SOCKET)rn rn cout<<"有客户尝试连接\n";rn if( send(client,"Password",sizeof("Password"),0)!=SOCKET_ERROR)rn rn cout<<"有客户请求连接,正等待客户输入验证信息\n";rn rn else rn rn rn cout<<"发送失败!\n"<
做一个大型实验求大神教
要做一个选课系统开发,我已经做好了选课基本程序,就是一点解决不了,就是选课过程中我可以储存每个学生所选的课(用的是链),但是我怎么在选课过程中同时记录对应课程的被选的学生的信息呢?即既可以在学生登录处查课程和老师,同时可以再老师登录处查自己的课的学生信息。
求大神教MFC做线性表,
可以教务管理系统中的成绩管理系统为例rnrn每个专业都有四年的培养计划,文件名为 TrainPlanrn文件中的主体是 四年所有的课程安排,这里我们对这个文件进行适当简化,仅仅包括理论教学;每门课程的记录格式为 课号 课程名称 开课学期序号 学时 学分 课程类型rnrn成绩管理系统 是一个公用平台,每个专业的培养计划各有不同,每个学期的课程安排也不一样,所以需要根据每个专业、年级动态的生成成绩管理的数据元素。rnrn因为对于同一个专业的学生,在一个学期的教学和课程安排中基本一致,所以对于同一个专业的学生成绩 可以 构造为 一个 线性表rnrn TrainPlan 文件中假想数据:rnrn0001 计算机导论 1 3 2 A1rn0002 英语 1 6 4 B2rn。。。。。rnrn对于 每一个学期的 数据元素 格式的确定,可以通过TrainPlan 文件 找出所有 第一个学期开的课程,生成第一学期 同学的成绩 这一 数据元素的格式
菜鸟级汇编,求大神教教我
DATA:rnX DB 20 DUP(0)rnY DB 20 DUP(0)rnW DB 20 DUP(0)rnENDSrnrnCODErnSTART:rnMOV CX, 20rn MOV BX, 0rn MOV AL, 30rnAGAING:rn MOV X[BX], BLrn MOV Y[BX], ALrn DEC ALrn RCL X[BX], 1rn RCR Y[BX], 1rn MOV AL, X[BX]rn CMP AL, Y[BX]rn JB ADD_ONErn JA SUB_ONErnADD_TWO: rn MOV W[BX-1], ALrn LOOP AGAINGrnADD_ONE:rn ADD AL, Y[BX]rn INC BXrn JMP ADD_TWOrnSUB_ONE:rn SUB Y[BX], ALrn INC BXrn JMP ADD_TWOrnENDSrn就是X数组里的比Y数组的大就做减法,小就做加法W数组储存结果。X和Y里的数先赋一个值然后通过移位变化,然后比大小,然后加减。大神帮我改改啊。rn
java大作业--纸牌游戏
java大作业--纸牌游戏,根据老师所给框架编写,但少了一些测试类,需自己完成
数据结构纸牌游戏大作业
数据结构大作业 纸牌游戏最简单代码code blocks完美运行,有需要的童鞋欢迎下载。。
游戏snowwhite大作业编程
游戏snowwhite大作业编程 c语言大作业 游戏
java大作业--魔方游戏
java大作业--魔方游戏,根据老师所给框架编写,
java大作业之飞鸟游戏
采用多线程编写java大作业之飞鸟游戏,实现基本要求,并添加了提高要求。(源自南邮,其他学校亦可借鉴)
js问题,大神教教我
有这样一组json数据:rnrn "code": 200, rn "msg": "执行成功!", rn "data": rn "list_supply": [rn rn "supply_id": "1", rn "supply_name": "肉类供应商"rn , rn rn "supply_id": "2", rn "supply_name": "果蔬供应商"rn , rn rn "supply_id": "12", rn "supply_name": "优良食品有限公司"rn rn ], rn "list_section": [rn rn "section_id": "230", rn "breif": "招标大米第一标段"rn rn , rn rn "section_id": "231", "dep_id": "86", rn "breif": "招标大米第二标段"rn rn , rn rn "section_id": "232", rn "breif": "招标大米第三标段"rn rn ], rn "list_supply_school": [rn rn "supply_id": "1",, rn "section_id": "231", rn "supply_name": "肉类供应商", rn "section_name": "招标大米第二标段"rn , rn rn "supply_id": "2",rn "section_id": "232",rn "supply_name": "果蔬供应商", rn "section_name": "招标大米第三标段"rn , rn rn "supply_id": "12", rn "section_id": "230",rn "supply_name": "优良食品有限公司", rn "section_name": "招标大米第一标段"rn rn ], rn "select_limit": 1rn rnrn我的想法是做一个标段列表(列表数据在list_section里),每个标段可以选择供应商(选择供应商是下拉框形式选择,在list_supply数据里),这些都做出来了,但是现在我想,将标段选择供应商的默认选项是list_supply_school里对应的内容,也就是说section_id =231的默认选择是肉类供应商,求大神告知,谢谢!rnrn
哪位大神教一下 怎么弄
[code=html]rn rn rn rn rn rn rn rn rn rn rn 游戏rn 新网游rn 新手卡rn 有奖活动rn 手游rn rn rn 新疆美女沉迷LOLrn rn E3大展:莎木3最终幻想7震撼公布rn 射击独占大作 战争机器4宣传视频rn 逆天收入 部落战争每天收入960万rn 半数魔兽玩家认为6.2新套装难看rn rn rn rn 上周首爆新游回顾rn rn 微软公布模拟现实网游 《ION》rn 螺旋猫性感COS英雄联盟女英雄rn 古剑奇谭网络版咒隐视频首曝光rn 《全职大师》首测精彩视频集锦rn rn rn rn 《天谕》时装礼包rn rn 《魔域》 奇想童乐新手箱 专区rn 《问道》 决战昆仑至尊礼包 专区rn 《不打不相识》豪华礼包 专区rn 《奇迹MU》新浪独家礼包 专区rn rn rn rn 玩天谕赢苹果手表rn rn 不打不相识红包季 升级领取红包rn 《魔域》公测开启 玩游戏送红包rn 玩《奇迹MU》S9版本赢丰厚奖品rn 风暴英雄公测 发微博赢苹果手表rn rn rn rn 勇者斗恶龙手游rn rn 火柴人联盟:LOL题材横版动作游戏rn Ben Brode:炉石传说烂牌亦将有用rn 《辐射:避难所》免费登陆iOS平台rn 《火炬之光》手游年内上架双平台rn rn rn rn rnrn[/code]
请各位大神教教我
刚开始java需要学什么??(注:C语言没学过。)rnrn谢谢
(请大神教一下,非常感谢)
请问如何在vue项目中,一个文件夹下分别构建pc和移动端,里面的东西大致怎么设置,前端怎么根据设备区判断什么时候该用pc,什么时候该用移动端的文件呢?新手上路,拜托 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的改变 我们对Markd...
c语言大作业扫雷程序求助!!!!
学生党端午节还在码代码,还码不出来,明天就ddl了,求各位大佬救一命,嘤rn总是显示中的 0x75d89a29 处有未经处理的异常: 0xC0000005: 读取位置 0x001800d8 时发生访问冲突rn然然然然后大概是(我觉得)是xianshi函数和drawkong函数出错了QAQrn#includern#include //rand(),srand()rn#include //srand((unsigned)time(NULL))rn#includern#includern#includern#includernvoid original(void);//初始界面rnvoid mouse_choosedegree(void);//选择游戏和背景rnvoid choosedegree(void);//选择难度rnvoid background(void);//故事背景rnvoid mouse_degree(void);//选择难度rnvoid drawchushi(void);//初始化空格子界面rnvoid drawkong(int X,int Y);//画空格子rnint MouseX,MouseY,X,Y;//鼠标位置rnMOUSEMSG m;//接收鼠标消息rnvoid shencheng(void);//随机生成雷rnvoid xianshi(void);//显示所点格子周围格子的雷数或插旗rnvoid kong(int X,int Y);//显示空格子rnint a,b,total;rnTCHAR randmineNUM[100];//显示数字的字符串rnstruct strnrn int lei;//格子当前状态,-1表示有雷,0表示无雷或已经显示数字rn int zhouwei;//统计格子周围的雷数rn int flag;//右键按下显示红旗标志,1表示有,0表示没有rn int fankai;//判断这个格子是否已经翻开,1表示翻开,0表示没有rnx[18][18];rnint main(void)rnrn original();rn while(1)rn rn xianshi();rn if(total<1)rn GameWin();rn rn return 0;rnrnvoid MouseGetXY(void)//获得鼠标的位置rnrn m=GetMouseMsg();rn MouseX=m.x;rn MouseY=m.y;rnrnvoid original(void)rnrn initgraph(1000,500);rn IMAGE img;rn loadimage(&img, "1.jpg",1000,500,true);rn putimage(0,0,&img);rn settextstyle(100,0,"Comic Sans MS");rn settextcolor(BLACK);rn setbkmode(TRANSPARENT);rn outtextxy(260,150,"Where is Peggy ?");rn settextstyle(40,0,"黑体");rn settextcolor(BLACK);rn setbkmode(TRANSPARENT);rn outtextxy(680,320,"*开始游戏");rn outtextxy(680,380,"*故事背景");rn outtextxy(680,440,"*退出");rn mouse_choosedegree();rnrnvoid mouse_choosedegree()rn rn MOUSEMSG m;rn m=GetMouseMsg();rn int x,y;rn while(1)rn rn m=GetMouseMsg();rn x=m.x;rn y=m.y;rn if(m.uMsg==WM_LBUTTONDOWN)rn rn if(x>=680&&x<=860&&y<=360&&y>=320)rn rn choosedegree();rn mouse_degree();rn break;rn rn if(x>=680&&x<=860&&y<=420&&y>=380)rn rn background();rn rn if(x>=680&&x<=860&&y<=480&&y>=440)rn rn end();rn rn rn rnrnvoid choosedegree(void)rnrn initgraph(1000,500);rn IMAGE img;rn loadimage(&img, "2.jpg",1000,500,true);rn putimage(0,0,&img);rn settextstyle(100,0,"黑体");rn settextcolor(BLACK);rn setbkmode(TRANSPARENT);rn outtextxy(430,70,"难度选择");rn settextstyle(40,0,"黑体");rn settextcolor(BLACK);rn setbkmode(TRANSPARENT);rn outtextxy(400,200,"*简单");rn outtextxy(600,200,"*中等");rn outtextxy(800,200,"*难");rnrnvoid background(void)rnrn initgraph(1000,500);rn IMAGE img;rnrn loadimage(&img, "3.jpg",1000,500,true);rn putimage(0,0,&img);rn settextstyle(65,0,"黑体");rn settextcolor(RED);rn setbkmode(TRANSPARENT);rn outtextxy(100,150,"故事背景");rn settextstyle(40,0,"黑体");rn settextcolor(BLUE);rn setbkmode(TRANSPARENT);rn outtextxy(50,230,"佩奇要过生日了,猪爸爸和猪妈妈要把佩奇打扮成小");rn outtextxy(10,280,"仙女,佩奇高兴极了,于是去玩她最爱的跳泥坑。不幸");rn outtextxy(10,330,"的是,佩奇一不小心跳进了二维世界和一维世界的夹缝");rn outtextxy(10,380,"中,佩奇要消失了!!快帮忙找到佩奇的所有线稿让佩");rn outtextxy(10,430,"奇顺利成为小仙女吧!!");rn settextstyle(40,0,"黑体");rn settextcolor(YELLOW);rn setbkmode(TRANSPARENT);rn outtextxy(600,430,"*玩法与扫雷相同");rn settextstyle(40,0,"黑体");rn settextcolor(BLACK);rn setbkmode(TRANSPARENT);rn outtextxy(50,100,"返回");rn turn();rnrnvoid end(void)rnrn initgraph(1000,500);rn IMAGE img;rnrn loadimage(&img, "4.jpg",1000,500,true);rn putimage(0,0,&img);rn settextstyle(100,0,"黑体");rn settextcolor(RED);rn setbkmode(TRANSPARENT);rn outtextxy(400,170,"谢谢~");rnrnvoid mouse_degree(void)rnrn while(1)rn rn int i,j,k; rn MouseGetXY();rn if(m.uMsg==WM_LBUTTONDOWN)rn rn if(MouseX>=400&&MouseX<=490&&MouseY<=240&&MouseY>=200)rn rn rn total=9*9;//所有未翻开或标雷的格子数rn a=220;b=250;rn initgraph(220,250,SHOWCONSOLE);rn drawchushi();rn DrawSmile();rn srand((unsigned)time(NULL)); /*初始化随机数生成器*/rn for(k=0;k<10;k++)rn rn i=rand()%8+1; /*生成一个随机数做x数组行下标*/rn j=rand()%8+1; /*生成一个随机数做x数组列下标*/rn rn if(x[i][j].lei==-1)rn rn k--;rn rn elsern rn x[i][j].lei=-1;rn rn rn break;rn rn if(MouseX>=600&&MouseX<=690&&MouseY<=240&&MouseY>=200)rn rn total=12*12;//所有未翻开或标雷的格子数rn a=280;b=310;rn initgraph(a,b,SHOWCONSOLE);rn int i,j,k;rn srand((unsigned)time(NULL)); /*初始化随机数生成器*/rn for(k=0;k<30;k++)rn rn i=rand()%11+1; /*生成一个随机数做x数组行下标*/rn j=rand()%11+1; /*生成一个随机数做x数组列下标*/rn if(x[i][j].lei==-1)rn k--;rn elsern x[i][j].lei=-1;rn rn _stprintf_s(randmineNUM, _T("%d"),k);//将minrNUM转换成字符串类型rn drawchushi();rn DrawSmile();rn break;rn rn if(MouseX>=800&&MouseX<=890&&MouseY<=240&&MouseY>=200)rn rn total=16*16;//所有未翻开或标雷的格子数rn a=400;b=430;rn initgraph(400,430,SHOWCONSOLE);rn int i,j,k;rn srand((unsigned)time(NULL)); /*初始化随机数生成器*/rn for(k=0;k<60;k++)rn rn i=rand()%15+1; /*生成一个随机数做x数组行下标*/rn j=rand()%15+1; /*生成一个随机数做x数组列下标*/rn if(x[i][j].lei==-1)rn k--;rn elsern x[i][j].lei=-1;rn rn drawchushi();rn DrawSmile();rn break;rn rn rn rnrnvoid turn(void)rnrn MOUSEMSG m;rn m=GetMouseMsg();rn int x,y;rn while(1)rn rn m=GetMouseMsg();rn x=m.x;rn y=m.y;rn if(m.uMsg==WM_LBUTTONDOWN)rn rn if(x>=50&&x<=140&&y<=140&&y>=100)rn rn original();rn rn rn rnrnvoid xianshi()//显示雷数、插旗、显示空格子、踩雷rnrn int t=0,X,Y,p,q;rn switch(m.uMsg)rn rn case WM_LBUTTONDOWN:rn rn MouseGetXY();rn X=(MouseX)/20;/*x坐标*/rn Y=(MouseY-30)/20;/*y坐标*/rn if(x[X][Y].lei!=-1)rn rn for(p=X-1;p<=X+1;p++)rn rn for(q=Y-1;q<=Y+1;q++)rn rn if(x[p][q].lei==-1)rn t++;rn rn rn if(t!=0)rn rn x[X][Y].zhouwei=t;rn _stprintf_s(randmineNUM,_T("%d"),x[X][Y].zhouwei);rn setcolor(RED);rn outtextxy(6+X*20,32+Y*20,randmineNUM);rn total--;x[X][Y].fankai=1;rn rn elsern kong(X,Y);rn rn else rn GameOver();rn rn case WM_RBUTTONDOWN:rn rn MouseGetXY();rn X=(MouseX)/20;/*x坐标*/rn Y=(MouseY-30)/20;/*y坐标*/rn if(x[X][Y].fankai==0&&X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20)rn rn x[X][Y].flag=1;rn DrawRedFlag(X,Y);rn total--;rn x[X][Y].fankai=1;rn rn rn rnrnvoid kong(int X,int Y)//显示空格子rnrn if(x[X][Y].flag!=1&&x[X][Y].lei!=-1&&x[X][Y].fankai!=1&&X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20)rn rn drawkong(X,Y);rn x[X][Y].lei=0;x[X][Y].fankai=1;rn total--;rn rn /*8个方向递归显示所有的空白格子*/rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&X!=1&&x[X-1][Y].lei!=-1)rn kong(X-1,Y);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&X!=1&&Y!=(a-40)/20&&x[X-1][Y+1].lei!=-1)rn kong(X-1,Y+1);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&Y!=(a-40)/20&&x[X][Y+1].lei!=-1)rn kong(X,Y+1);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&Y!=(a-40)/20&&X!=(a-40)/20&&x[X+1][Y+1].lei!=-1)rn kong(X+1,Y+1);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&X!=(a-40)/20&&x[X+1][Y].lei!=-1)rn kong(X+1,Y);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&X!=(a-40)/20&&Y!=1&&x[X+1][Y-1].lei!=-1)rn kong(X+1,Y);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&Y!=1&&x[X][Y-1].lei!=-1)rn kong(X,Y-1);rn if (X!=0&&X<(a-20)/20&&Y!=0&&Y<(a-20)/20&&X!=1&&Y!=1&&x[X-1][Y].lei!=-1)rn kong(X-1,Y-1);rnrnvoid GameOver(void)rnrn int X,Y;rn for (X=1;X<(a-20)/20;X++)rn rn for (Y=1;Y<(a-20)/20;Y++)rn rn if(x[X][Y].lei==-1)//显示所有地雷rn rn drawkong(X,Y);rn setfillstyle(BS_SOLID);rn setfillcolor(RED);rn fillellipse(3 + X * 20, 33 + Y * 20, 17 + X * 20, 47 + Y * 20); rn setbkcolor(WHITE);rn setcolor(RED);rn settextstyle(16, 0, _T("宋体"));rn outtextxy(2, 2, _T("输了请重来"));rn rn initgraph(1000,500);rn IMAGE img;rn loadimage(&img, "6.jpg",1000,500,true);rn putimage(0,0,&img);rn settextstyle(100,0,"Comic Sans MS");rn settextcolor(RED);rn setbkmode(TRANSPARENT);rn outtextxy(260,150,"You Lose");rn settextstyle(40,0,"黑体");rn settextcolor(RED);rn setbkmode(TRANSPARENT);rn outtextxy(680,320,"佩奇掉入了深渊再也回不来了");rn mouse_choosedegree();rn settextstyle(40,0,"黑体");rn settextcolor(RED);rn setbkmode(TRANSPARENT);rn outtextxy(680,400,"再帮佩奇一次");rnrn MouseGetXY();rn if(m.uMsg==WM_LBUTTONDOWN)rn rn if(MouseX>=680&&MouseX<=770&&MouseY<=440&&MouseY>=400)rn original();rn rn rn rn rnrnvoid GameWin(void)rnrn initgraph(1000,500);rn IMAGE img;rn loadimage(&img, "5.jpg",1000,500,true);rn putimage(0,0,&img);rn settextstyle(100,0,"Comic Sans MS");rn settextcolor(RED);rn setbkmode(TRANSPARENT);rn outtextxy(260,150,"You win!");rn settextstyle(40,0,"黑体");rn settextcolor(BLACK);rn setbkmode(TRANSPARENT);rn outtextxy(680,320,"恭喜你~佩奇顺利成为了小仙女~");rn mouse_choosedegree();rnrnvoid drawkong(int i,int j) //画出16*16的小格rnrn setfillstyle(BS_SOLID);rn setfillcolor(RED);rn bar(i*20,30+j*20,i*20,30+j*20);rnrnvoid drawchushi()rnrn int i,j;rn for(i=1;i<(a-20)/20;i++)rn for(j=1;j<(a-20)/20;j++)rn rn setfillstyle(BS_SOLID);rn setfillcolor(GREEN);rn bar(10+i*20-8,40+j*20-8,10+i*20+8,40+j*20+8);rn rnrnvoid DrawSmile(void)rnrn setfillstyle(BS_SOLID);rn setfillcolor(YELLOW);rn fillellipse(90, 5, 110, 25);//绘制椭圆(笑脸)函数,参数为椭圆外切矩形的左上右下角坐标rn setfillstyle(BS_SOLID);rn setfillcolor(BLACK);//画眼睛rn fillellipse(93, 13, 97, 17);rn fillellipse(103, 13, 107, 17);rn bar(97, 20, 103, 21);//画嘴巴rnrnvoid DrawRedFlag(int i, int j)rnrn setfillstyle(BS_SOLID);rn setfillcolor(RED);rn bar(8 + j * 20, 35 + i * 20, 8 + j * 20 + 5, 35 + i * 20 + 5);rn setcolor(BLACK);rn line(8 + j * 20, 35 + i * 20, 8 + j * 20, 35 + i * 20 + 10);rnrn
java大作业扫雷(无数据库)
java大作业(扫雷),自己写的一个小游戏,模仿w7系统上自带的扫雷,但是没有数据库,需要的同志自取
C#大作业 扫雷多目标制作
1.设计Form1窗体模板,添加两个botton,两个label,一个panel,和menustrip组件。一个Botton背景添加贴图,另一个设为标视处雷,一个label记分数,另一个label记录时间,在menustrip加上ToolStripMenuItem游戏和ToolStripMenuItem帮助,竖向加入开具、初级、中级、高级、自定义、标记、颜色、扫雷英雄榜、退出,并设置快捷键。并且再加入timer组件,用来标记时间。
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo