}
WayCopy(oldmap,map);
if(oldmap[i][j-1]==0&&!yes)ÅжÏ×ó·½ÊÇ·ñ¿ÉÒÔ×ß {
FindWay(oldmap,i,j-1); if(yes) { way[wayn][0]=i; way[wayn++][1]=j; return; } }
WayCopy(oldmap,map);
if(oldmap[i-1][j-1]==0&&!yes)ÅжÏ×óÉÏ·½ÊÇ·ñ¿ÉÒÔ×ß {
FindWay(oldmap,i-1,j-1); if(yes) { way[wayn][0]=i; way[wayn++][1]=j; return; } }
return; }
void MapRand(int (map)[N])¿ªÊ¼µÄËæ»úÃÔ¹¬Í¼ {
int i,j;
cleardevice();ÇåÆÁ
randomize(); Ëæ»úÊý·¢ÉúÆ÷ for(i=0;i for(j=0;j void PrMap(int (map)[N])Êä³öÃÔ¹¬Í¼ { int i,j; for(i=0;i void Find(void)ÕÒµ½Í¨Â· { int i; setfillstyle(SOLID_FILL,RED);ºìÉ«Êä³ö×ߵľßÌå·Ïß wayn--; for(i=wayn;i>=0;i--) { bar(100+way[i][1]15-6,50+way[i][0]15-6,100+ way[i][1]15+6,50+way[i][0]15+6); sleep(1);¿ØÖÆÏÔʾʱ¼ä } bar(100+(N-2)15-6,50+(N-2)15-6,100+ (N-2)15+6,50+(N-2)15+6); ÔÚÄ¿±êµã±êºìÉ« setcolor(GREEN); settextstyle(0,0,2);ÉèÖÃ×ÖÌå´óС outtextxy(130,400,\} void NotFind(void)ûÕÒµ½Í¨Â· { setcolor(GREEN); settextstyle(0,0,2);ÉèÖÃ×ÖÌå´óС outtextxy(130,400,\} void Result(void)½á¹û´¦Àí { if(yes)Èç¹ûÕÒµ½ Find(); elseûÕÒµ½Â· NotFind(); getch(); } void Close(void)ͼÐÎ¹Ø±Õ { closegraph(); } °¸ÀýÎå ɨµØÀ×ÓÎÏ· 5.3.4 Ô´³ÌÐò #include #define LEFTPRESS 0xff01 #define LEFTCLICK 0xff10 #define LEFTDRAG 0xff19 #define MOUSEMOVE 0xff08 struct { int num;¸ñ×Óµ±Ç°´¦ÓÚʲô״̬,1ÓÐÀ×£¬0ÒѾÏÔʾ¹ýÊý×Ö»òÕ߿հ׸ñ×Ó int roundnum;ͳ¼Æ¸ñ×ÓÖÜΧÓжàÉÙÀ× int flag;ÓÒ¼ü°´ÏÂÏÔʾºìÆìµÄ±êÖ¾,0ûÓкìÆì±êÖ¾,1ÓкìÆì±êÖ¾ }Mine[10][10]; int gameAGAIN=0;ÊÇ·ñÖØÀ´µÄ±äÁ¿ int gamePLAY=0;ÊÇ·ñÊǵÚÒ»´ÎÍæÓÎÏ·µÄ±êÖ¾ int mineNUM;ͳ¼Æ´¦Àí¹ýµÄ¸ñ×ÓÊý char randmineNUM[3];ÏÔʾÊý×ÖµÄ×Ö·û´® int Keystate; int MouseExist; int MouseButton; int MouseX; int MouseY; void Init(void);ͼÐÎÇý¶¯ void MouseOn(void);Êó±ê¹â±êÏÔʾ void MouseOff(void);Êó±ê¹â±êÒþ²Ø void MouseSetXY(int,int);ÉèÖõ±Ç°Î»Öà int LeftPress(void);×ó¼ü°´Ï int RightPress(void);Êó±êÓÒ¼ü°´Ï void MouseGetXY(void);µÃµ½µ±Ç°Î»Öà void Control(void);ÓÎÏ·¿ªÊ¼,ÖØÐÂ,¹Ø±Õ void GameBegain(void);ÓÎÏ·¿ªÊ¼»Ãæ void DrawSmile(void);»Ð¦Á³ void DrawRedflag(int,int);ÏÔʾºìÆì void DrawEmpty(int,int,int,int);Á½ÖÖ¿Õ¸ñ×ÓµÄÏÔʾ void GameOver(void);ÓÎÏ·½áÊø void GameWin(void);ÏÔʾʤÀû int MineStatistics(int,int);ͳ¼ÆÃ¿¸ö¸ñ×ÓÖÜΧµÄÀ×Êý int ShowWhite(int,int);ÏÔʾÎÞÀ×ÇøµÄ¿Õ°×²¿·Ö void GamePlay(void);ÓÎÏ·¹ý³Ì void Close(void);ͼÐÎ¹Ø±Õ void main(void) { Init(); Control(); Close(); } void Init(void)ͼÐοªÊ¼ { int gd=DETECT,gm; initgraph(&gd,&gm,\} void Close(void)ͼÐÎ¹Ø±Õ { closegraph(); } void MouseOn(void)Êó±ê¹â±êÏÔʾ { _AX=0x01; geninterrupt(0x33); } void MouseOff(void)Êó±ê¹â±êÒþ²Ø { _AX=0x02; geninterrupt(0x33); } void MouseSetXY(int x,int y)ÉèÖõ±Ç°Î»Öà { _CX=x; _DX=y; _AX=0x04; geninterrupt(0x33); } int LeftPress(void)Êó±ê×ó¼ü°´Ï { _AX=0x03; geninterrupt(0x33); return(_BX&1); }