这是我大一的课设的一个题目!
现在我把源代码show 出来!
井字棋有图形界面
/* Note:Your choice is C IDE */
#include <stdio.h>
#include<graphics.h>
#include<stdlib.h>
#include<bios.h>
#include<conio.h>/*头文件*/
#define UP 0x4800/*上移--方向键up*/
#define DOWN 0x5000/*下移--方向键down*/
#define LEFT 0x4b00/*左移--方向键left*/
#define RIGHT 0x4d00/*右移--方向键right*/
#define SPACE 0x3920/*落子--空格键*/
#define ESC 0x011b/*退出----结束键*/
#define X ((getx()-75)/50)+1 /*把接收到的x坐标转化成二维数组的行下标*/
#define Y ((gety()-75)/50)+1 /*把接收到的y坐标转化成二维数组的列下标*/
#define N 4 /*由于数组的下标是由0开始的。为了方便计算。我就选用了4*4的二维数组*/
int a[N][N];/*二维数组定义成静态的*/
void white() /*在当前位置画白棋*/
{
setcolor(7);
setfillstyle(1,7);
circle(getx(),gety(),20);/*获得光标的位置。并以光标所在为置画一个半径为20的园*/
floodfill(getx(),gety(),7);/*对所画的园的颜色的填充。这里选7,7代表的是白色*/
}
void blue() /*补棋盘的颜色*/
{
setcolor(BLUE);
setfillstyle(1,BLUE);
circle(getx(),gety(),20);
floodfill(getx(),gety(),BLUE);
}
void picture()
{
cleardevice();
setbkcolor(BLUE);
setfillstyle(1, 2); /*绿色以实填充*/
setcolor(YELLOW);
rectangle(50,50,200,200);
floodfill(50, 50, 14);
setcolor(12);
setfillstyle(1