level 6
hack绝望
楼主
#include<bios.h>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<graphics.h>
#define ESC 0x11b
#define UP 0x4800
#define DOWN 0x5000
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define SPACE 0x3920
/*键值*/
#define STARTX 130
#define STARTY 130
#define ENDY 330
#define ENDX 330
/*游戏图画位置*/
#define KEYZ 20
/*键的大小*/
#define TEXTC 10
#define GAMEC 14
#define KEYC 4
#define BJC 0
/*颜色*/
#define DLNUM 10
/*地雷数*/
void setgraph(void);
void setstart(void);
void key(int,int,int);
void setdata(void);
void game(void);
void gameover(void);
void wingame(void);
/*函数声明*/
void setgraph(void) /*设置图形*/
{
int gd=DETECT,gm;
registerbgidriver(EGAVGA_driver);
initgraph(&gd,&gm,"");
}
void setstart(void) /*开始函数*/
{int i;
setbkcolor(BJC);
setcolor(RED);
for(i=0;i<100;i+=10)
{ rectangle(i,i,640-i,480-i);
}
setcolor(TEXTC);
outtextxy(115,350,"UP=UPKEY DOWN=KEYDOWN LEFT=LEFTKEY RIGHT=RIGHTKEY");
outtextxy(115,365,"QQ:769560056 by:fengzi OK=SPACE QUIT=ESCKEY");
setcolor(GAMEC);
for(i=0;i<=10;i++)
line(STARTX,i*KEYZ+STARTY,ENDX,i*KEYZ+STARTY);
for(i=0;i<=10;i++)
line(i*KEYZ+STARTX,STARTY,i*KEYZ+STARTX,ENDY);
}
void key(int x,int y,int color)
{
setcolor(color);
rectangle(x*KEYZ+STARTX,y*KEYZ+STARTY,x*KEYZ+STARTX+KEYZ,
y*KEYZ+STARTY+KEYZ);
rectangle(x*KEYZ+STARTX+1,y*KEYZ+STARTY+1,x*KEYZ+STARTX+KEYZ-1,
y*KEYZ+STARTY+KEYZ-1);
/*画按键*/
}
int a[12][12];/*地雷数组*/
void setdata(void)
{ int i,j,x,y,k;
int xy[8][2]={{-1,-1},{-1,0},{-1,1},{1,-1},{1,0},{1,1},{0,-1},{0,1}};
/*八个位置*/
srand(time(NULL));
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
a[i][j]=0;
for(i=0;i<DLNUM;)
{
x=rand()%10+1;
y=rand()%10+1;
if(a[x][y]!=-1)
{a[x][y]=-1;i++;}
}
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
{
if(a[i][j]!=-1)
{
for(k=0;k<8;k++) /*四周地雷的数目*/
{
2009年12月05日 03点12分
1
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<graphics.h>
#define ESC 0x11b
#define UP 0x4800
#define DOWN 0x5000
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define SPACE 0x3920
/*键值*/
#define STARTX 130
#define STARTY 130
#define ENDY 330
#define ENDX 330
/*游戏图画位置*/
#define KEYZ 20
/*键的大小*/
#define TEXTC 10
#define GAMEC 14
#define KEYC 4
#define BJC 0
/*颜色*/
#define DLNUM 10
/*地雷数*/
void setgraph(void);
void setstart(void);
void key(int,int,int);
void setdata(void);
void game(void);
void gameover(void);
void wingame(void);
/*函数声明*/
void setgraph(void) /*设置图形*/
{
int gd=DETECT,gm;
registerbgidriver(EGAVGA_driver);
initgraph(&gd,&gm,"");
}
void setstart(void) /*开始函数*/
{int i;
setbkcolor(BJC);
setcolor(RED);
for(i=0;i<100;i+=10)
{ rectangle(i,i,640-i,480-i);
}
setcolor(TEXTC);
outtextxy(115,350,"UP=UPKEY DOWN=KEYDOWN LEFT=LEFTKEY RIGHT=RIGHTKEY");
outtextxy(115,365,"QQ:769560056 by:fengzi OK=SPACE QUIT=ESCKEY");
setcolor(GAMEC);
for(i=0;i<=10;i++)
line(STARTX,i*KEYZ+STARTY,ENDX,i*KEYZ+STARTY);
for(i=0;i<=10;i++)
line(i*KEYZ+STARTX,STARTY,i*KEYZ+STARTX,ENDY);
}
void key(int x,int y,int color)
{
setcolor(color);
rectangle(x*KEYZ+STARTX,y*KEYZ+STARTY,x*KEYZ+STARTX+KEYZ,
y*KEYZ+STARTY+KEYZ);
rectangle(x*KEYZ+STARTX+1,y*KEYZ+STARTY+1,x*KEYZ+STARTX+KEYZ-1,
y*KEYZ+STARTY+KEYZ-1);
/*画按键*/
}
int a[12][12];/*地雷数组*/
void setdata(void)
{ int i,j,x,y,k;
int xy[8][2]={{-1,-1},{-1,0},{-1,1},{1,-1},{1,0},{1,1},{0,-1},{0,1}};
/*八个位置*/
srand(time(NULL));
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
a[i][j]=0;
for(i=0;i<DLNUM;)
{
x=rand()%10+1;
y=rand()%10+1;
if(a[x][y]!=-1)
{a[x][y]=-1;i++;}
}
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
{
if(a[i][j]!=-1)
{
for(k=0;k<8;k++) /*四周地雷的数目*/
{