c4023859 c4023859
关注数: 5 粉丝数: 19 发帖数: 111 关注贴吧数: 49
求各位c语言大神帮我看看这道题 c语言,有关扫雷的程序改进:1增加游戏级别功能(参考windows扫雷游戏)2将游戏画面定位在屏幕中间位置 /*-------------------------------------------文件main.c----------------------------------------------*/ #include "key.c" #include "miner.c" int main(){ int gameRes; /*记录游戏结束的结果状态:0表示退出游戏;-1游戏失败; 1为胜利。*/ initGraph(); /*初始化图形显示方式*/ do{      newGame(); /*初始化新的游戏*/      gameRes=0;      /*main loop dealing with keystroke messages*/      do{        int key = getKey(); /*读入操作信息*/        if(key == ESC) break;        switch(key){       /*对其他有效操作的处理*/        case ENTER: case SPACE: gameRes = openMine(pi,pj);break;        case UP: moveUp();break;        case DOWN: moveDown();break;        case LEFT: moveLeft();break;        case RIGHT: moveRight();break;        case LOWERF: case UPPERF: flagBlock(pi,pj);break;        case LOWERA: case UPPERA: gameRes = autoOpen(pi,pj);break;        case LOWERQ:case UPPERQ: questBlock(pi,pj);break;        }        if(checkWin()) gameRes = 1;      } while(!gameRes); } while (!confirm(gameRes)) ; return 0; } /*------------------------------------------ 文件main.c结束------------------------------------------*/ /*-------------------------------------------文件main.c----------------------------------------------*/ #include "key.c" #include "miner.c" int main(){ int gameRes; /*记录游戏结束的结果状态:0表示退出游戏;-1游戏失败; 1为胜利。*/ initGraph(); /*初始化图形显示方式*/ do{      newGame(); /*初始化新的游戏*/      gameRes=0;      /*main loop dealing with keystroke messages*/      do{        int key = getKey(); /*读入操作信息*/        if(key == ESC) break;        switch(key){       /*对其他有效操作的处理*/        case ENTER: case SPACE: gameRes = openMine(pi,pj);break;        case UP: moveUp();break;        case DOWN: moveDown();break;        case LEFT: moveLeft();break;        case RIGHT: moveRight();break;        case LOWERF: case UPPERF: flagBlock(pi,pj);break;        case LOWERA: case UPPERA: gameRes = autoOpen(pi,pj);break;        case LOWERQ:case UPPERQ: questBlock(pi,pj);break;        }        if(checkWin()) gameRes = 1;      } while(!gameRes); } while (!confirm(gameRes)) ; return 0; } /*------------------------------------------ 文件main.c结束------------------------------------------*/ /*---------------------------------------------文件key.c------------------------------------------------*/ #include <bios.h> /*定义有效的键值*/ #define ENTER 0x1c0d #define UP 0x4800 #define DOWN 0x5000 #define LEFT 0x4b00 #define RIGHT 0x4d00 #define ESC 0x011b #define SPACE 0x3920 #define LOWERF 0x2166 #define UPPERF 0x2146 #define LOWERA 0x1e61 #define UPPERA 0x1e41 #define LOWERQ 0x1071 #define UPPERQ 0x1051 /*获取按键信息,返回有效的操作值*/ int getKey(void){ while(1){     int key=bioskey(0);     switch(key){     case ENTER:     case UP:     case DOWN:     case LEFT:     case RIGHT:     case ESC:     case SPACE:     case LOWERF:     case UPPERF:     case LOWERA:     case UPPERA:     case LOWERQ:     case UPPERQ: return key;     } } } /*------------------------------------------文件 key.c结束------------------------------------------*/
1 下一页