签到

09月14日
尚未签到

共有回帖数 0

    cynthie

    等级:
    原代码如下  :)
    本来是给一个女孩做的,做好了人家连看都不看  MD  气死了!
    我QQ  64676851  志同道合者++

    #includestdio.h
    #includegraphics.h
    #includebios.h
    #includestdlib.h
    #includeconio.h
    #define BC LIGHTBLUE
    #define FC RED
    #define LEFT 0x4b00
    #define RIGHT 0x4d00
    #define DOWN 0x5000
    #define UP 0x4800
    #define ESC 0x011b
    void drawmat(char *mat,int matsize,int x,int y,int color);
    void ashui();
    void printsnake(int x,int y,int corlor);
    void moveh(int *x,int *y,char (*p)[30],int dir);
    void movet(int *tx,int *ty,char (*p)[30]);
    void food(char (*p)[30]);
    void main()
    {
    int x,y,tx,ty,driver=DETECT,mode,key,key1;char snake[40][30]={0};
    initgraph(&driver,&mode,"");
    ashui();
    setcolor(RED);
    rectangle(80,80,520,420)  ;
    rectangle(100,100,500,400)  ;
    setfillstyle(SOLID_FILL, BC);
    floodfill(200,200,RED);
    printsnake(2,15,FC);
    printsnake(3,15,FC);
    snake[2][15]=snake[3][15]=1;
    food(snake);
    key=RIGHT;
    x=3;y=15;tx=2;ty=15;
    for(;;)
    {
    if(bioskey(1))key1=bioskey(0);
    if(key1==ESC)break;
    if(key1==LEFT&&key!=RIGHT||key1==RIGHT&&key!=LEFT||key1==UP&&key!=DOWN||key1==DOWN&&key!=UP)key=key1;
    moveh(&x,&y,snake,key);
    if(snake[x][y]!=5)
    {
    movet(&tx,&ty,snake);
    if(x0||x39||y0||y29)
    {printsnake(x,y,0);
    break;
    }
    else if(snake[x][y])break;
    }
    else food(snake);
    delay(10000);
    }
    moveto(260,240);
    outtext("GAME OVER!");
    getch();    getch();
    }

    void printsnake(int x,int y,int corlor)
    {
    int xx,yy;
    setfillstyle(SOLID_FILL, corlor);
    setcolor(corlor);
    xx=100+10*x+5;
    yy=100+10*y+5;
    circle(xx,yy,5);
    floodfill(xx,yy,corlor);
    }
    void moveh(int *x,int *y,char (*p)[30],int dir)
    {
    int i,j;
    i=*x;j=*y;
    switch(dir)
    {
    case RIGHT:p[j]=1;(*x)++;break;
    case UP:p[j]=2;(*y)--;break;
    case LEFT:p[j]=3;(*x)--;break;
    case DOWN:p[j]=4;(*y)++;break;
    }
    printsnake(*x,*y,FC);
    }
    void movet(int *tx,int *ty,char (*p)[30])
    {
    int i,j;
    i=*tx;j=*ty;
    printsnake(i,j,BC);
    switch(p[j])
    {
    case 1:(*tx)++;break;
    case 2:(*ty)--;break;
    case 3:(*tx)--;break;
    case 4:(*ty)++;break;
    }
    p[j]=0;
    }
    void food(char (*p)[30])
    {
    int x,y;
    for(;;)
    {
    srand( (unsigned)time(NULL));
    x=random(40);
    y=random(30);
    if(!p[x][y])break;
    }
    printsnake(x,y,WHITE);
    p[x][y]=5;
    }
    void drawmat(char *mat,int matsize,int x,int y,int color)
    {
     int i, j, k, n;
     n = (matsize - 1) / 8 + 1;
     for(j = 0; j  matsize; j++)
       for(i = 0; i  n; i++)
         for(k = 0;k  8; k++)
           if(mat[j * n + i] & (0x80  k))
             putpixel(x + i * 8 + k, y + j, color);
    }
    void ashui()
    {
    char tan32K[]={
     0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,
     0x00,0x03,0x00,0x00,0x00,0x07,0x00,0x00,
     0x00,0x07,0x80,0x00,0x00,0x0C,0x60,0x00,
     0x00,0x18,0x30,0x00,0x00,0x38,0x1C,0x00,
     0x00,0x73,0x0E,0x00,0x00,0xE1,0x83,0x80,
     0x01,0x80,0x01,0xF0,0x03,0x03,0xF0,0xFE,
     0x06,0x7E,0x70,0x3E,0x0C,0x00,0xC0,0x00,
     0x30,0x00,0x80,0x00,0x40,0x01,0x00,0x00,
     0x00,0x43,0xF8,0x00,0x00,0x7C,0x1C,0x00,
     0x00,0x60,0x18,0x00,0x00,0x63,0x18,0x00,
     0x00,0x63,0x18,0x00,0x00,0x63,0x18,0x00,
     0x00,0x62,0x18,0x00,0x00,0x62,0x18,0x00,
     0x00,0x46,0x18,0x00,0x00,0x04,0x00,0x00,
     0x00,0x0C,0xC0,0x00,0x00,0x18,0x70,0x00,
     0x00,0x30,0x38,0x00,0x00,0x60,0x1C,0x00,
     0x01,0xC0,0x0C,0x00,0x02,0x00,0x04,0x00,
    };
    char chi32K[]={
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
     0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,
     0x00,0x00,0x70,0x00,0x00,0x00,0x70,0x00,
     0x00,0x00,0x60,0x00,0x00,0x00,0xE0,0x00,
     0x00,0x00,0xC1,0x80,0x00,0x01,0x9F,0xC0,
     0x00,0xC1,0xFE,0x00,0x67,0xE3,0x00,0x00,
     0x7C,0xE2,0x00,0x00,0x20,0xC4,0x00,0x00,
     0x30,0xC8,0x00,0x00,0x30,0x80,0x38,0x00,
     0x30,0x81,0xF8,0x00,0x17,0xC7,0x60,0x00,
     0x1E,0x00,0x60,0x00,0x10,0x00,0xC0,0x00,
     0x10,0x00,0xC0,0x00,0x00,0x00,0x80,0x08,
     0x00,0x01,0x80,0x08,0x00,0x01,0x00,0x08,
     0x00,0x01,0x00,0x08,0x00,0x03,0x00,0x18,
     0x00,0x01,0x80,0x3C,0x00,0x01,0xFF,0xF8,
     0x00,0x00,0x7F,0xE0,0x00,0x00,0x00,0x00,
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    };
    char she32K[]={
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
     0x00,0x00,0x1C,0x00,0x01,0x80,0x0E,0x00,
     0x01,0x80,0x06,0x00,0x01,0x80,0x02,0x00,
     0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x70,
     0x00,0x80,0x87,0xF8,0x00,0xBC,0xF8,0x30,
     0x3F,0xCE,0xC0,0x60,0x18,0x8D,0x80,0x40,
     0x18,0x89,0x80,0x00,0x08,0x89,0x30,0x40,
     0x08,0xB8,0x10,0x60,0x0B,0xE0,0x10,0xE0,
     0x0C,0x80,0x11,0xC0,0x00,0x88,0x13,0x00,
     0x00,0x8C,0x1C,0x00,0x00,0x8C,0x10,0x00,
     0x00,0xF6,0x30,0x08,0x03,0xC4,0x30,0x08,
     0x7F,0x00,0x10,0x08,0x3C,0x00,0x10,0x18,
     0x00,0x00,0x18,0x3C,0x00,0x00,0x0F,0xFC,
     0x00,0x00,0x03,0xF0,0x00,0x00,0x00,0x00,
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    };
    char a16S[]={
     0x00,0x00,0x7B,0xFE,0x48,0x08,0x50,0x08,
     0x60,0x08,0x53,0xE8,0x4A,0x28,0x4A,0x28,
     0x4A,0x28,0x6B,0xE8,0x50,0x08,0x40,0x08,
     0x40,0x08,0x40,0x08,0x40,0x28,0x40,0x10,
    };
    char shui16S[]={
     0x01,0x00,0x01,0x00,0x01,0x08,0x01,0x10,
     0x7D,0x20,0x05,0xC0,0x05,0x40,0x09,0x20,
     0x09,0x20,0x11,0x10,0x11,0x18,0x21,0x0E,
     0xC1,0x04,0x01,0x00,0x05,0x00,0x02,0x00,
    };
    char zuo16S[]={
     0x08,0x80,0x0C,0x80,0x09,0x00,0x13,0xFE,
     0x12,0x80,0x34,0x88,0x50,0xFC,0x90,0x80,
     0x10,0x80,0x10,0x84,0x10,0xFE,0x10,0x80,
     0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
    };
    char pin16S[]={
     0x00,0x00,0x0F,0xF0,0x08,0x10,0x08,0x10,
     0x08,0x10,0x0F,0xF0,0x08,0x10,0x00,0x00,
     0x7E,0xFC,0x42,0x84,0x42,0x84,0x42,0x84,
     0x42,0x84,0x7E,0xFC,0x42,0x84,0x00,0x00,
    };
    drawmat(tan32K,32,150,180,BLUE);
    drawmat(chi32K,32,300,180,BLUE);
    drawmat(she32K,32,450,180,BLUE);
    drawmat(a16S,16,350,250,RED);
    drawmat(shui16S,16,370,250,RED);
    drawmat(zuo16S,16,390,250,RED);
    drawmat(pin16S,16,410,250,RED);
    getch();
    cleardevice();
    }


    楼主 2016-02-05 19:12 回复

共有回帖数 0
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知