计算机技能培训报告,计算机科学与技术实训报告.doc

本文档是一份计算机科学与技术专业的实训报告,详细介绍了如何使用C语言实现五子棋游戏。报告涵盖了从界面设计、棋盘生成、棋子位置判断到游戏结束条件的实现,并提供了关键代码示例。通过此项目,学生掌握了图形库的运用及游戏逻辑的编程技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文档介绍:

计算机科学与技术实训报告.doc部州證工地修院实训报告实训名称:计算机科学与技术专业暑假项目实训姓名:秦振华院(系):计算机与通信工程学院专业班级:计算机科学与技术专业12-01班学号:541207010132指导教师:成绩:时间:2013年6月30日至2013年7月12日实训报告一.项目:五子棋1•需求分析1・1耍有比较友好的界而,界而应显示那方落子,游戏提示,以及显示那方获胜。1・2当游戏开始的吋候,黑方先落子,随后白方落子,肖鼠标点向某个点吋,产生相应的棋子。1・3当某一方在任意一条线上产生五个相同的棋子时,获胜,游戏提示,那方获胜,左键继续,右键退出。2.关键的技术2.1棋盘的形成,背影颜色,棋子颜色形状的实现。2.2棋子位置的确定2.3某一方是否获胜的判断2.4游戏结朿界而和文字的实现2.5图形库的合理应用3.系统实现#include〈graphics.h>#include#include〈string.h>#include〈time.h>#includeintxx=30,yy=50,tlx二30,tly=20,t2x=557,t2y=20,kuan=50,banjing=10;chartl[30],*t2;intqi[15][15];intluo;voidhuaqipanO{setbkcolor(RGB(OxEE,0xE6,0x85));cleardevice();setcolor(BLACK);outtextxy(tlx,tly,黑方落了“);outtextxy(t2x,t2y,鼠标左键落子,右键退出“);setlinestyle(PSSOLID,1);inti;for(i=0;i<=14;++i)line(xx,yy+i^kuan,kuan*14+xx,yy+i*kuan);for(i=0;i<=14;++i){line(xx+i*kuan,yy,xx+i*kuan,14*kuan+yy);}}intnagedian(intint&y){intmx,my,i;intdist=999999999,dist2;intz[4][2];z[0][0]=(x~xx)/kuan,z[0][1]=(y-yy)/kuan;z[l][0]=z[0][0];z[l][l]=z[0][1]+1;z[2][0]二z[0][0]+l;z[2][l]二z[0][l];z[3][0]=z[0][0]+l;z[3][0]=z[0][1]+1;intdx=~l,dy;for(i=0;i〈4;卄i){if(z[i][0]>二0&&z[i][0]〈二14&&z[i][l]>=0&&z[i][1]〈二14){mx=z[i][0]*kuan+xx;my=z[i][1]*kuan+yy;dis12=(mx~x)*(mx~x)+(my-y)*(my-y);if(dist2(kuan/3)*(kuan/3))return0;x二dx;y二dy;return1;}intwin(intx,inty){intxx,yy,count;xx=x;yy=y;count二1;while((yy~l)>=0&&(xx~l)>=0&&qi[yyT][xxT]=qi[yy][xx])//左上到右yy二yyT;xx=xx-l;while((yy+l)〈二14&&(xx+l)〈二14&&qi[yy+1][xx+l]=qi[yy][xx]){yy=yy+l;xx二xx+1;count++;}if(count〉二5)return1;xx=x;yy=y;count=l;while((yy~l)>=0&&(xx+l)<=14&&qi[yy-1][xx+l]==qi[yy][xx])//右上到左下{yy=yy~l;xx二xx+1;}while((yy+1)<=14&&(xx~l)>=0&&qi[yy+1][xxT]=qi[yy][xx]){yy=yy+i;xx=xx-l;count++;}if(count>=5)return1;xx=x;yy=y;countxl;while((yy-1)>=0&&qi[yy-1][xx]==qi[yy][xx])//上到下yy二yy-1;while((yy+1)〈二14&&qi[yy+1][xx]二二qi[yy][xx]){yy二yy+1;COUF11++;}if(count>=5)return1;xx=x;yy=y;count=l;while((xxT)>=0&&qi[yy][xxT]二二qi[yy][xx])//左到右xx二xx-1;while((xx+1)<=14&&qi

内容来自淘豆网www.taodocs.com转载请标明出处.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值