2 helenxd Helenxd 于 2016.04.25 18:29 提问

c语言编写五子棋游戏,出错 5C

本人在意c语言编写老师布置的一项五子棋游戏的作业,编译运行通过,但是在打开的界面上无法绘制棋子,求大神解答!谢谢!
代码:
#include
#include
#include
//-------------------------------------------------
//画棋盘
void drawpane()
{
for(int i=50;i<=900;i+=50)
{
line(i,50,i,700);
}
for(int j=50;j<=700;j+=50)
{
line(50,j,900,j);
}

}
//----------------------------------------------------
//定义一个二维数组,里面存放棋子,白子为1,黑子为0
void Initq(int arr[14][18])
{
for(int i=0;i {
for(int j=0;j {
arr[i][j]=0;
}
}
}
//--------------------------------------------------
//画棋子,奇数画白子,偶数画黑子
void drawqizi(int arr[14][18])
{
MOUSEMSG m; //定义鼠标消息
int color=0;
while(1)
{
m=GetMouseMsg();//获取一条鼠标消息
if(WM_LBUTTONDOWN==m.uMsg)
{
color++;
int x=m.x;
int y=m.y;
if(1==color%2)
{
setcolor(0xffffff);
setfillstyle(0xffffff);
arr[x][y]=0;
}
else
{
setcolor(0);
setfillstyle(0);
arr[x][y]=1;
}
if(m.x>=100&&m.x<=900&&m.y>=100&&m.y<=700)
{
fillcircle((m.x+50)/50*50,(m.y+50)/50*50,20);
setfillstyle(0x0000ff);
}

    }
}

}
//-------------------------------------------------------
void check_win(int arr[14][18])
{
//判断横方向
MOUSEMSG m;
int x=m.x;
int y=m.y;
if( arr[x][y]==0&&arr[x-1][y]==0&&arr[x-2][y]==0&&arr[x-3][y]==0&&arr[x-4][y]==0)
{
printf("白子胜利!");

}
else if( arr[x][y]==0&&arr[x+1][y]==0&&arr[x+2][y]==0&&arr[x+3][y]==0&&arr[x+4][y]==0)
{
    printf("白子胜利!");

}
else if ( arr[x][y]==1&&arr[x+1][y]==1&&arr[x+2][y]==1&&arr[x+3][y]==1&&arr[x+4][y]==1)
{
    printf("黑子胜利!");

}
else if(arr[x][y]==1&&arr[x-1][y]==1&&arr[x-2][y]==1&&arr[x-3][y]==1&&arr[x-4][y]==1)
{
  printf("黑子胜利!");
}

}
int main()
{
int arr[14][18];

initgraph(1000,800,0);
setbkcolor(0x408030);
cleardevice();
RECT r={0,0,900,100};
drawtext("五子棋游戏",&r,DT_TOP);
drawpane();
drawqizi(arr);
bar3d(400,10,500,40,2,1);
Initq(arr);
check_win(arr);//棋盘大小14行18列
return 0;

}

3个回答

caozhy
caozhy   Ds   Rxr 2016.04.26 00:02
caozhy
caozhy   Ds   Rxr 2016.04.26 00:02
CSDNXIAOD
CSDNXIAOD   2016.04.25 18:32

用c语言代码编写的游戏“简易五子棋”
用c语言编写游戏
一个C语言编写的坦克大战游戏
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!