亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? bwchess.c

?? C語言版本的智能黑白對戰(zhàn)
?? C
?? 第 1 頁 / 共 3 頁
字號:
    int i,j;
    for(i=1;i<=5;i++)
        drawbox(x-5+i,y-5+i,x+DET*8+5+i,y+DET*8+5+i,TABLESHADOW);
    drawbox(x-5,y-5,x+DET*8+5,y+DET*8+5,TABLECOLOR);
    
    drawboxt(x-3,y-3,x+DET*8+3,y+DET*8+3);
    setcolor(GRIDCOLOR);
    for(i=0;i<8;i++)
        for(j=0;j<8;j++)
            rectangle(x+DET*i,y+DET*j,x+DET*i+DET,y+DET*j+DET);
}

/*畫棋子*/
/*在第r行,第c列畫棋子*/
void drawchess(int r,int c,int color)
{
    int cr;
    cr=DET/2;
    setcolor(color);

    circle(tablex0+(c-1)*DET+cr,tabley0+(r-1)*DET+cr,cr-3);
    setfillstyle(SOLID_FILL,color);
    floodfill(tablex0+(c-1)*DET+cr,tabley0+(r-1)*DET+cr,color);
    
    chess[r][c].flag=1;
    chess[r][c].color=color;
    
    /*該什么顏色的棋子走了*/
    if(color==WC)curchess=BC;
    else curchess=WC;

    curr=r;
    curc=c;
}

/*只畫棋子*/
/*在第r行,第c列畫棋子*/
void drawchessonly(int r,int c,int color)
{
    int cr;
    cr=DET/2;
    setcolor(color);

    circle(tablex0+(c-1)*DET+cr,tabley0+(r-1)*DET+cr,cr-3);
    setfillstyle(SOLID_FILL,color);
    floodfill(tablex0+(c-1)*DET+cr,tabley0+(r-1)*DET+cr,color);
    
    chess[r][c].color=color;
}

/*畫實心矩形*/
void drawbox(int x1,int y1,int x2,int y2,int color)
{
    setfillstyle(SOLID_FILL,color);
    bar(x1,y1,x2,y2);
}

/*畫棋子外的圈線*/
void drawedge(int r,int c,int color)
{
    int cr;
    cr=DET/2;
    setcolor(color);
    rectangle(tablex0+(c-1)*DET+1,tabley0+(r-1)*DET+1,tablex0+c*DET-1,tabley0+r*DET-1);
    rectangle(tablex0+(c-1)*DET+2,tabley0+(r-1)*DET+2,tablex0+c*DET-2,tabley0+r*DET-2);
}
/*顯示字模漢字*/
void drawmat(char *mat,int matsize,int x,int y,int color)
/*依次:字模指針、點陣大小、起始坐標(biāo)(x,y)、顏色*/
{   
    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))  /*測試為1的位則顯示*/
                    putpixel(x+i*8+k,y+j,color);
}


/*打印分?jǐn)?shù)*/
void printscore()
{
    char p[3];
    
    drawbox(520,120,590,135,INFBKCOLOR);
    drawbox(520,140,590,155,INFBKCOLOR);

    setcolor(WHITE);
    outtextxy(530,122,itoa(wccount,p,10));
    outtextxy(530,142,itoa(bccount,p,10));
    
    setcolor(INFBKCOLOR);
    rectangle(470,115,490,135);
    rectangle(470,135,490,155);

    setcolor(curchess);
    if(wccount+bccount>0){
        if(curchess==WC)
            rectangle(470,115,490,135);
        else
            rectangle(470,135,490,155);
    }

}

/*畫信息框*/
void drawinf()
{
    int cr;
    int color;
    int x1=480,y1=125;

    cr=DET/2-10;

    color=WC;
    setcolor(color);
    circle(x1,y1,cr-3);
    setfillstyle(SOLID_FILL,color);
    floodfill(x1,y1,color);

    color=BC;
    x1=480;y1=145;
    setcolor(color);
    circle(x1,y1,cr-3);
    setfillstyle(SOLID_FILL,color);
    floodfill(x1,y1,color);
       
}

/*畫凸框*/
void drawboxt(int x1,int y1,int x2,int y2)
{
    setcolor(WHITE);
    line(x1,y1,x1,y2);
    line(x1,y1,x2,y1);
    setcolor(DARKGRAY);
    line(x2,y1,x2,y2);
    line(x2,y2,x1,y2);
}

/*畫凹框*/
void drawboxa(int x1,int y1,int x2,int y2)
{
    setcolor(DARKGRAY);
    line(x1,y1,x1,y2);
    line(x1,y1,x2,y1);
    setcolor(WHITE);
    line(x2,y1,x2,y2);
    line(x2,y2,x1,y2);
}

/*畫窗體*/
void drawwin(int x1,int y1,int x2,int y2,int color)
{
    drawbox(x1,y1,x2,y2,color);
    setcolor(WHITE);
    line(x1,y1,x1,y2);
    line(x1,y1,x2,y1);
    setcolor(DARKGRAY);
    line(x2,y1,x2,y2);
    line(x2,y2,x1,y2);
}

/*畫被選中的菜單條*/
void drawmenuselect(int selectmenu)
{
    switch(selectmenu){
        case 1:
            drawboxa(460,250,590,255+20);
            break;
        case 2:
            drawboxa(460,260+25,590,290+20);
            break;
        case 3:
            drawboxa(460,295+25,590,325+20);
            break;
    }
}

/*清除菜單的選擇框*/
void clearmenubox()
{
    setcolor(7);
    rectangle(460,250,590,255+20);
    rectangle(460,260+25,590,290+20);
    rectangle(460,295+25,590,325+20);
}

/*畫當(dāng)前所在的菜單條*/
void drawmenucur(int curmenu)
{
    switch(curmenu){
        case 1:
            drawboxt(460,250,590,255+20);
            break;
        case 2:
            drawboxt(460,260+25,590,290+20);
            break;
        case 3:
            drawboxt(460,295+25,590,325+20);
            break;
    }
}

/*初始化菜單與信息框*/
void printinfbw()
{
    Byte *bottomlabel[]={"↑↓←→鍵—移動 空格鍵—放棋  ESC鍵—主菜單"};
    Byte *menubar[]={"主菜單","人機大戰(zhàn)","雙人對戰(zhàn)","退出游戲"};
    int i;
    int size=10;
    flag16=open("hzk16",O_RDWR|O_BINARY);
    if(flag16==-1){printf("Can not Open HZK16\n");exit(0);}

    drawwin(450,110,600,160,INFBKCOLOR);
    drawinf();

    out16hz(490,215,size,YELLOW,*(menubar+0));

    drawwin(450,240,600,356,7);

    for(i=1;i<4;i++)
        out16hz(475,255+35*(i-1),size,BLUE,*(menubar+i));

    drawwin(0,455,639,479,BLUE);
    out16hz(15,460,size,WHITE,*(bottomlabel+0));

    close(flag16);
}


/******************************************************************************/
    
/*放棋子*/
void putchess(int r,int c,int color)
{
    if(chess[r][c].flag==0)
        drawchess(r,c,color);
}
/*開始時自動放的4個棋子*/
void autoput()
{
    int t;
    randomize();
    t=random(6)+1;
    
    initchesstable();
    /*6種自動布局*/
    switch(t){
        case 1:
            putchess(4,4,WC);
            putchess(4,5,WC);
            putchess(5,4,BC);
            putchess(5,5,BC);
            break;
        case 2:
            putchess(4,4,BC);
            putchess(4,5,BC);
            putchess(5,4,WC);
            putchess(5,5,WC);
            break;
        case 3:
            putchess(4,4,BC);
            putchess(4,5,WC);
            putchess(5,4,BC);
            putchess(5,5,WC);
            break;
        case 4:
            putchess(4,4,WC);
            putchess(4,5,BC);
            putchess(5,4,WC);
            putchess(5,5,BC);
            break;
        case 5:
            putchess(4,4,WC);
            putchess(4,5,BC);
            putchess(5,4,BC);
            putchess(5,5,WC);
            break;
        case 6:
            putchess(4,4,BC);
            putchess(4,5,WC);
            putchess(5,4,WC);
            putchess(5,5,BC);
    }
    drawedge(curr,curc,curchess);
    wccount=2;bccount=2;
    printscore();
}

/*得到按鍵的代碼*/
int specialkey()
{
    int key;
    while(bioskey(1)==0);
    key=bioskey(0);
    key=key&0xff?key&0xff:key>>8;
    return(key);
}

/*初始化棋盤*/
void initchesstable()
{
    int i,j;
    for(i=1;i<9;i++)
        for(j=1;j<9;j++){
            chess[i][j].color=-1;
            chess[i][j].flag=0;
        }
}

/*當(dāng)前顏色的棋子是否有地方可以放*/
int canputcurchess()
{
    int r,c;
    int i,temp=0;
    for(r=1;r<=8&&temp==0;r++)
        for(c=1;c<=8&&temp==0;c++){
            if(chess[r][c].flag==0){
                {/*向上找*/
                    i=1;
                    while(chess[r-i][c].flag==1&&chess[r-i][c].color!=curchess&&(r-i)>0)i++;
                    if(i!=1)
                        if(chess[r-i][c].flag==1&&chess[r-i][c].color==curchess&&(r-i)>0)
                            temp=1;
                }
                
                {/*向左找*/
                    i=1;
                    while(chess[r][c-i].flag==1&&chess[r][c-i].color!=curchess&&(c-i)>0)i++;
                    if(i!=1)
                        if(chess[r][c-i].flag==1&&chess[r][c-i].color==curchess&&(c-i)>0)
                            temp=1;
                }
                
                {/*向下找*/
                    i=1;
                    while(chess[r+i][c].flag==1&&chess[r+i][c].color!=curchess&&(r+i)<9)i++;
                    if(i!=1)
                        if(chess[r+i][c].flag==1&&chess[r+i][c].color==curchess&&(r+i)<9)
                            temp=1;
                }

                {/*向右找*/
                    i=1;
                    while(chess[r][c+i].flag==1&&chess[r][c+i].color!=curchess&&(c+i)<9)i++;
                    if(i!=1)
                        if(chess[r][c+i].flag==1&&chess[r][c+i].color==curchess&&(c+i)<9)
                            temp=1;
                }

                {/*向左上找*/
                    i=1;
                    while(chess[r-i][c-i].flag==1&&chess[r-i][c-i].color!=curchess&&(r-i)>0&&(c-i)>0)i++;
                    if(i!=1)
                        if(chess[r-i][c-i].flag==1&&chess[r-i][c-i].color==curchess&&(r-i)>0&&(c-i)>0)
                            temp=1;
                }
                
                {/*向右下找*/
                    i=1;
                    while(chess[r+i][c+i].flag==1&&chess[r+i][c+i].color!=curchess&&(r+i)<9&&(c+i)<9)i++;
                    if(i!=1)
                        if(chess[r+i][c+i].flag==1&&chess[r+i][c+i].color==curchess&&(r+i)<9&&(c+i)<9)
                            temp=1;
                }

                {/*向左下找*/
                    i=1;
                    while(chess[r+i][c-i].flag==1&&chess[r+i][c-i].color!=curchess&&(r+i)<9&&(c-i)>0)i++;
                    if(i!=1)
                        if(chess[r+i][c-i].flag==1&&chess[r+i][c-i].color==curchess&&(r+i)<9&&(c-i)>0)
                            temp=1;
                }

                {/*向右上找*/
                    i=1;
                    while(chess[r-i][c+i].flag==1&&chess[r-i][c+i].color!=curchess&&(r-i)>0&&(c+i)<9)i++;
                    if(i!=1)
                        if(chess[r-i][c+i].flag==1&&chess[r-i][c+i].color==curchess&&(r-i)>0&&(c+i)<9)
                            temp=1;
                }
            }
        }
        return(temp);
}

/*計算機走棋*/
void computerput()
{
    int r,c,i,j,temp=0;
    for(r=1;r<=8&&temp==0;r++)
        for(c=1;c<=8&&temp==0;c++){

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区在线视频| 日韩女优电影在线观看| 蜜桃视频一区二区| 亚洲日本护士毛茸茸| 精品国产一区二区三区久久久蜜月 | 久久99精品网久久| 国产精品国产三级国产普通话99| 91麻豆精品国产自产在线观看一区| 99r国产精品| 日本欧美加勒比视频| 亚洲电影一区二区| 亚洲午夜一区二区| 亚洲免费毛片网站| 亚洲一区二区五区| 亚洲网友自拍偷拍| 日韩国产欧美在线视频| 亚洲成人自拍一区| 日韩二区在线观看| 日本不卡视频在线观看| 日韩精品福利网| 蜜臀av一区二区在线观看| 亚洲欧洲日韩av| 有码一区二区三区| 亚洲午夜日本在线观看| 国产精品久久国产精麻豆99网站| 国产精品免费看片| 一区二区三区资源| 夜夜夜精品看看| 肉色丝袜一区二区| 久久99久久久久久久久久久| 午夜久久久久久电影| 麻豆一区二区在线| 成人福利视频网站| 99国产精品久久久久久久久久| 色综合天天综合| 欧美久久免费观看| 国产三级精品视频| 一区二区三区在线免费播放| 亚洲gay无套男同| 国产一区二区三区免费| 成人av中文字幕| 欧美日本韩国一区二区三区视频| 777久久久精品| 国产三级精品视频| 亚洲成人在线观看视频| 亚洲制服丝袜av| 国产一区二区三区免费| 色婷婷综合久色| 欧美成人a∨高清免费观看| 国产精品毛片无遮挡高清| 久久99精品国产91久久来源| 欧美日韩在线三区| 18欧美亚洲精品| 国产不卡高清在线观看视频| 日韩一级免费一区| 日本欧美肥老太交大片| 在线免费观看一区| 国产精品久久久久久久久免费丝袜 | 狠狠v欧美v日韩v亚洲ⅴ| 欧洲av一区二区嗯嗯嗯啊| 亚洲国产精品高清| 国产一区二区三区蝌蚪| 日韩精品一区二区三区蜜臀| 亚洲h动漫在线| 欧美在线你懂得| 亚洲综合色自拍一区| 色综合久久久久综合| 国产精品萝li| www.日韩精品| 中文字幕中文字幕在线一区| 高清国产一区二区| 国产欧美日韩精品a在线观看| 久久电影网电视剧免费观看| 欧美一区二区三区思思人| 尤物av一区二区| 欧美在线制服丝袜| 亚洲一二三四久久| 欧美自拍偷拍午夜视频| 香蕉影视欧美成人| 欧美日韩一区二区在线视频| 亚洲成人av中文| 欧美精品v日韩精品v韩国精品v| 亚洲一区二区欧美日韩| 欧美日本韩国一区二区三区视频| 亚洲国产综合视频在线观看| 欧美日韩高清一区二区三区| 亚洲不卡一区二区三区| 欧美剧情片在线观看| 日本vs亚洲vs韩国一区三区| 欧美一级欧美三级在线观看| 精品写真视频在线观看| 久久久久久一二三区| aaa国产一区| 亚洲 欧美综合在线网络| 91精品国产日韩91久久久久久| 亚洲一区二区三区视频在线| 欧美丰满少妇xxxbbb| 极品瑜伽女神91| 自拍偷在线精品自拍偷无码专区 | 精品一区二区三区免费观看| 久久综合九色综合欧美亚洲| 成人国产精品视频| 日韩精品一区第一页| www国产精品av| 96av麻豆蜜桃一区二区| 日日夜夜免费精品视频| 26uuu国产在线精品一区二区| 国产成人免费在线视频| 一级精品视频在线观看宜春院| 欧美一区二区国产| 99久久综合精品| 免费看日韩a级影片| 国产精品国产三级国产普通话三级 | 国产在线播放一区三区四| 自拍偷拍欧美激情| 欧美mv日韩mv亚洲| 91伊人久久大香线蕉| 青草国产精品久久久久久| 国产精品素人视频| 日韩精品在线网站| 在线免费观看日韩欧美| 成人一区二区三区视频在线观看| 亚洲123区在线观看| 亚洲欧洲综合另类| 久久夜色精品一区| 欧美精品久久久久久久多人混战| 丁香桃色午夜亚洲一区二区三区 | 欧美午夜免费电影| 成人免费视频视频| 另类中文字幕网| 亚洲制服丝袜av| 国产精品久久网站| 久久综合九色综合久久久精品综合| 91精品办公室少妇高潮对白| 国产福利精品一区二区| 视频一区在线播放| 夜夜嗨av一区二区三区中文字幕| 久久久久久久久岛国免费| 7777精品伊人久久久大香线蕉经典版下载 | 成人黄页在线观看| 久久不见久久见中文字幕免费| 亚洲亚洲人成综合网络| 亚洲精品免费在线观看| 亚洲欧美怡红院| 国产精品视频免费看| 欧美mv和日韩mv国产网站| 欧美一区二区在线免费观看| 欧美唯美清纯偷拍| 欧美午夜一区二区三区| 欧洲亚洲国产日韩| 91国在线观看| 91黄视频在线观看| 一本大道久久精品懂色aⅴ| 成人h动漫精品一区二区| 国产成人av影院| 国产电影一区在线| 风间由美一区二区av101| 国产伦精一区二区三区| 国产电影精品久久禁18| 国产福利一区二区三区在线视频| 国产一区二区美女诱惑| 国产白丝精品91爽爽久久 | 欧美三日本三级三级在线播放| 色综合久久久久| 欧美怡红院视频| 欧美日韩国产一级二级| 69p69国产精品| 精品国产乱码久久久久久免费 | va亚洲va日韩不卡在线观看| www.日本不卡| 欧美日韩一区二区三区四区| 这里只有精品视频在线观看| 欧美va在线播放| 国产精品久久国产精麻豆99网站| 亚洲欧美精品午睡沙发| 成人国产亚洲欧美成人综合网| 亚洲三级免费电影| 亚洲图片欧美视频| 五月天丁香久久| 激情深爱一区二区| 99久久99久久精品免费看蜜桃| 在线影视一区二区三区| 国产精品电影一区二区三区| 亚洲乱码国产乱码精品精小说| 亚洲国产视频直播| 韩国成人福利片在线播放| av午夜精品一区二区三区| 欧美精品xxxxbbbb| 久久久久97国产精华液好用吗| 亚洲激情在线播放| 久久精品国产精品亚洲红杏| caoporn国产一区二区| 欧美一区二区三区的| 国产精品高潮久久久久无| 香蕉成人伊视频在线观看| 成人一区二区三区中文字幕| 欧美一区二区三区四区久久| 国产精品久久久久四虎| 国精产品一区一区三区mba桃花 | 亚洲视频电影在线|