扫雷课程设计报告 -(3)

2025-07-27

/*定义几个游戏中要用到的功能按键*/ #define ESC 0x11b #define UP 0x4800 #define DOWN 0x5000 #define LEFT 0x4b00 #define RIGHT 0x4d00 #define SPACE 0x3920 #define ENTER 0x1c0d

int a[50][50]={0}; /*存放雷的数组*/ int b[50][50]={0}; /*存放格子状态的数组*/

char num[9][2]={\

int gbx=320,gby=240; /*当前光标位置 (0,0)表示左上角*/

int ii,jj; main() {

int i,j,m=30,n=16,d=20,k; int gdriver = DETECT, gmode; randlei(30,16,100); ii=m/2;jj=n/2;

registerbgidriver(gdriver);

initgraph(&gdriver, &gmode, \ wangge(m,n,d); redraw(m,n,d);

while(1) /*反复从键盘获得程序需要的按键*/ {

if(bioskey(1)) /*判断是否有按键*/ {

k=bioskey(0); switch(k) { case ESC:

exit(0);break; case UP: if(jj>1) {

jj-=1;

redraw(m,n,d);

} break; case DOWN:

if(jj

jj+=1;

redraw(m,n,d); } break;

case LEFT: /*LEFT 键向下移动光标*/ if(ii>1) {

ii-=1;

redraw(m,n,d); } break;

case RIGHT: /*RIGHT 键向下移动光标*/ if(ii

ii+=1;

redraw(m,n,d); }

break;

case SPACE: /*空格键认为无雷打开*/ {

b[jj][ii]=1; if(a[jj][ii]==0) tansuo(jj,ii,n,m); }

redraw(m,n,d); break;

case ENTER: /*回车键认为有雷标记*/ if(b[jj][ii]==0)b[jj][ii]=-1;

else if(b[jj][ii]==-1)b[jj][ii]=2;

else if(b[jj][ii]==2)b[jj][ii]=0;

redraw(m,n,d);

break; }

}

} getch();

closegraph(); } /*

redraw重画函数在用户有操作后,重画游戏画面 */

redraw(int m,int n,int d) {

int i,j; wangge(m,n,d); for(i=1;i<=n;i++) for(j=1;j<=m;j++) {

if(b[i][j]!=1) gezi3d(320+(j-1-m/2)*d,240+(i-1-n/2)*d,d); else

if(a[i][j]>=0) {


扫雷课程设计报告&nbsp;-(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:家庭教育先进工作者事迹材料

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219