资源描述:
《南京航空航天大学金城学院(2)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、南京航空航天大学金城学院《C语言程序设计》课程设计实验报告题目:五子棋游戏班级:20110222姓名:张冲学号:2011022221指导老师:谢金国日期:2012年2月16日一、课题要求:在一个方阵上通过两人对弈的形式,依次在棋盘上放置两种颜色的棋子,哪一方先让五个棋子形成一条直线(包括横、竖、对角线3个方向),即为获胜,本程序实现用键盘控制的五子棋游戏。游戏初始运行界面应为如下:游戏操作规则:按左右上下方向键移动棋子按空格键确定落棋子禁止在棋盘外按空格你是否接受上述的游戏规则(Y/N)如果输入Y,才可以
2、进行游戏,进入正式的游戏界面,要绘制五子棋的棋盘,设置棋子颜色。二、程序设计代码(C语言)#include#include#include#include#include#defineLEFT0×4b00#defineRIGHT0×4d00#defineDOWN0×5000#defineUP0×4800#defineESC0×011b#defineSPACE0×3920#defineBILI20#defineJ
3、Z4#defineJS3#dfineN19intbox[N][N];intstep_x,step_y;intkey;intflag=1;voiddraw_box();voiddraw_cicle(intx,inty,intcolor)voidchange();voidjudgewho(intx,inty);voidjudgekey();intjudgeresult(intx,inty);voidattention();voidattention(){charch;window(1,1,80,25);tex
4、tbackground(LIGHTBLUE);textcolor(YELLOW);clrscr();gotoxy(15,2);printf("游戏操作规则:");gotoxy(15,4);printf("PlayRules:");gotoxy(15,6);printf("1、按左右上下方向键移动棋子");gotoxy(15,8);printf("1.PressLeft,Right,Up,DownKeytomovepiece");gotoxy(15,10);printf("2、按空格确定落棋子");goto
5、xy(15,12);printf("2.PressSpacetoplacethePiece");gotoxy(15,14);printf("3、禁止在棋盘外按空格");gotoxy(15,16);printf("3.DONOTpressSpaceoutsideofthechessboard");gotoxy(15,18);printf("你是否接受上述的游戏规则(Y/N)");gotoxy(15,20);printf("DoyouaccepttheabovePlayingRules?[Y/N]:");wh
6、ile(1){gotoxy(60,20);ch=getche();if(ch=='Y'
7、
8、ch=='y')break;elseif(ch=='N'
9、
10、ch=='n'){window(1,1,80,25);textbackground(BLACK);textcolor(LIGHTGRAY);clrscr();exit(0);}gotoxy(51,12);Printf("");}}voiddraw_box(){intx1,x2,y1,y2;setbkcolor(LIGHTBLUE);setcolor(YELL
11、OW);gotoxy(7,2);printf("Left,Right,Up,DownKEYtomove,Spacetoput,ESC-quit.");for(x1=1,y1=1,y2=18;x1<=18;x1++)line((x1+JZ)*BILI,(y1+JS)*BILI,(x1+JZ)*BILI,(y2+JS)*BILI);for(x1=1,y1=1,x2=18;y1<=18,y1++)line((x1+JZ)*BILI,(y1+JS)*BILI,(x2+JZ)*BILI,(y1+JS)*BILI);
12、For(x1=1;x1<=18;x1++)For(y1=1;y1<=18;y1++)Box[x1][y1]=0;}Voiddraw_circle(intx,inty,intcolor){Setcolor(color);Setlinestyle(SOLID_LINE,0,1);X=(x+JZ)*BILI;Y=(y+JS)*BILI;Circle(x,y,8);}Voidjudgekey(){Inti;Intj;Switch(ke