- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言扫雷游戏源代码
C语言扫雷游戏源代码
/*
模拟扫雷游戏
*/
#include graphics.h
#include math.h
#include stdio.h
#include dos.h
#include stdlib.h
#include conio.h
#include alloc.h
union REGS regs;
int size=15;/*用于表示每个方块的大小(正方形的边长)*/
int pix,piy=50;/*pix,piy是矩阵的偏移量*/
char b[2]=1;/*用于显示方格周围的雷的个数*/
int pan[30][16];/*用于记录盘面的情况:0:没有、9:有雷、1~8:周围雷的个数*/
int pan1[30][16];/*pan1[][]纪录当前的挖雷情况,0:没有操作、1:打开了、2:标记了*/
int tt;/*纪录时间参数*/
int Eflags;/*用于标记鼠标按钮的有效性,0:有效,1:无效,2:这是鼠标的任意键等于重新开始*/
int Msinit();
void Draw(int x,int y,int sizex,int sizey);
void Facedraw(int x,int y,int sizel,int k);
void Dead(int sizel,int x,int y);
void Setmouse(int xmax,int ymax,int x,int y);
int Msread(int *xp,int *yp,int *bup,struct time t1,int k);
void Draw1(int x,int y);
int Open(int x,int y);
float Random();
void Have(int sum,int x,int y,int xx,int yy);
void Help();
void Coread();
void Ddraw2(int x,int y);
/*下面是主函数*/
main()
{
int mode=VGAHI,devices=VGA;/*图形模式初始化的变量*/
char ams; /*鼠标操作中的标志变量*/
int xms,yms,bms; /*鼠标的状态变量*/
int i,j,k,k1=0; /*i,j,k是循环变量*/
int x=9,y=9,flags=0; /*x,y矩阵的大小*/
int sum=10; /*sum 盘面的雷的总数目,是个x,y的函数*/
int x1=0,y1=0; /*用于记录光标当前的位置*/
int x11=0,y11=0; /*暂时保存鼠标位置的值*/
int sizel=10; /*脸的大小*/
int cflags=1; /*这是菜单操作标志变量,没有弹出1,弹出0*/
struct time t1={0,0,0,0}; /*时间结构体,头文件已定义*/
int co[3]; /*暂时纪录历史纪录*/
void far *Map; /*用于保存鼠标图片*/
char name[3][20]; /*名字字符串,用于记录名字*/
FILE * p; /*文件指针用于文件操作*/
Msinit(); /*鼠标初始化*/
/*registerbgidriver(EGAVGA_driver);*/
initgraph(devices,mode,C:\\tc); /*图形模式初始化*/
/*为图片指针分配内存*/
if((Map=farmalloc(imagesize(0,0,20,20)))==NULL)/*图片的大小是20*20*/
{
printf(Memory ererr!\n);
printf(Press any key to out!\n);
exit(1);
}
/*用于检验文件是否完整*/
while((p = fopen(score.dat, r)) == NULL) /*如果不能打开就新建一个*/
{
if((p = fopen(score.dat, w)) == NULL)/*如果不能新建就提示错误并推出*/
{
printf(The file cannot open!\n);
printf(Presss any key to exit!\n);
ge
文档评论(0)