C语言程序源代码---中国象棋

  • 格式:doc
  • 大小:44.50 KB
  • 文档页数:11

下载文档原格式

  / 11
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#include

#include

#include

#include

#include"c:\tc\LIB\1.c"

#define W 119

#define S 115

#define A 97

#define D 100

#define space 32

#define UP 72

#define DOWN 80

#define LEFT 75

#define RIGHT 77

#define ENTER 13

void qipan();

void jiemian(int);

void guangbiao1(int,int);

void guangbiao2(int,int);

void xuanzhong(int,int);

void gaizi(int,int);

char array(int,int);

void xiazi(int,int,int,int);

/*int panding(char,int,int,int,int);*/

main()

{

int gdriver,gmode,i=0,c=0,x=190,y=190,m,n; char p;

FILE *fp;

gdriver=DETECT;

gmode=0;

if((fp=fopen("file.txt","at")) == NULL) {

printf("Cannot open file!");

system("pause");

exit(0);

}

printf("%d,%d",gdriver,gmode); registerbgidriver(EGAVGA_driver);

initgraph(&gdriver,&gmode,"c:\\tc"); cleardevice();

while(c!=27)

{

c=getch();

clrscr();

jiemian(i);

if(c==80)

{

fputs("down ",fp);

i++;

if(i==4)

{

i=0;

}

}

if(i==1)

{

if(c==13)

{

fputs("enter ",fp);

qipan();

c=getch();

while(c!=27)

{

c=getch();

if(c==115)

{

fputs("S ",fp);

y=y+40;

guangbiao1(x,y);

guangbiao2(x,y-40);

}

if(c==119)

{

fputs("W ",fp);

y=y-40;

guangbiao1(x,y);

guangbiao2(x,y+40);

}

if(c==97)

{ fputs("A\n",fp);

x=x-40;

guangbiao1(x,y);

guangbiao2(x+40,y);

}

if(c==100)

{ fputs("D\n",fp);

x=x+40;

guangbiao1(x,y);

guangbiao2(x-40,y);

}

if(c==13)

{

fputs("enter\n",fp);

xuanzhong(x,y);

m=x;n=y;

}

if(c==32)

{

fputs("space\n",fp);

xiazi(m,n,x,y);

fputs("gaizi\n",fp);

gaizi(m,n);

}

if(x>350||y>390||x<30||y<30)

{

x=190;y=30;

}

}

}

}

}

getch();

closegraph();

fclose(fp);

restorecrtmode();

return 0;

}

void qipan()

{

int i,j;

setbkcolor(GREEN);

cleardevice();

setlinestyle(0,0,3);

setcolor(1);

rectangle(10,10,370,410);

rectangle(30,30,350,390);

for(i=1;i<8;i++)

{

setlinestyle(0,0,3);

line(i*40+30,30,i*40+30,190);

line(i*40+30,230,i*40+30,390);

}

for(j=1;j<9;j++)

{

setlinestyle(0,0,3);

line(30,j*40+30,350,j*40+30);

}

setlinestyle(3,0,3);

line(150,30,230,110);

line(230,30,150,110);

line(150,310,230,390);

line(230,310,150,390); setusercharsize(4,1,2,1); settextstyle(1,0,4);

outtextxy(70,195,"chinese chess"); red_shuai(190,30);

red_shi(150,30);

red_shi(230,30);

red_xiang(110,30);

red_xiang(270,30);

red_ma(70,30);

red_ma(310,30);

red_ju(30,30);

red_ju(350,30);

red_pao(70,110);

red_pao(310,110);

red_bing(30,150);

red_bing(110,150);

red_bing(190,150);

red_bing(270,150);

red_bing(350,150);

black_jiang(190,390);

black_shi(150,390);

black_shi(230,390);

black_xiang(110,390);