黑白棋 最简单的c语言程序的程序

> 图书详情
本书相关资源下载
相关图书推荐
¥79.00¥59.30
作者:王小科
¥89.00¥66.80
购买本书的用户还购买了
您最近的浏览历史
零基础学C语言 第3版
分享到: &
条码书号: 1
上架日期:
出版日期:
定&&&&&&价:¥69.00
普通会员价:¥55.20
高级会员价:¥53.80
贵宾会员价:¥51.80&&&&为您节省:¥17.20
零基础学编程零基础学C语言第3版康
[](一个工作日内处理您的建议)
客服 邮箱: 传真:010-
一对一在线或电话咨询,您可以任何方式联系任何一位客服人员,我们将为您竭诚服务!
电话: 010-0-&
金书网专业图书读者交流群,旨在搭建一个专业图书交流的良好平台,欢迎加入!
金书网科技工程苑
金书网大众图书坊
金书网计算机前沿
欢迎关注金书网微信公众平台,与大家共同在分享、阅读、学习中提升自己!
金书网机械工程苑
金书网经典经管苑
金书网大众图书坊
金书网高端计算机
Copyright 2005 金书网
All rights reservedC语言图形小游戏(黑白棋)---C语言小站
&& |    |  |&& |  |&
 |  |&&
&C语言图形小游戏(黑白棋)
&&&&&&&&&&
       C语言图形小游戏(黑白棋)&
&#include&stdio.h&
&#include&graphics.h&
&#define H (y-100)/10
&#define L (x-100)/10
&int Mark[20][20];
&int Change=2;
&void InitMark()
&for(i=0;i&20;i++)
&&& for(j=0;j&20;j++)
&&& Mark[i][j]=0;
&void Screen()
&settextstyle(0, 0, 2);
&outtextxy(50,50,&BLACK WHITE
&settextstyle(0,0,1);
&outtextxy(4,354,&ESC
--&OVER!!&);
&outtextxy(4,364,&A --&Try
Again!!&);
&setcolor(1);
&rectangle(100,100,300,300);
&rectangle(1,350,170,450);
&for(i=1;i&21;i++)
{line(100+10*i,100,100+10*i,300);
line(100,100+10*i,300,100+10*i);
&void PicBlock(int x,int y)
{if(Change==1) setcolor(RED);
&else setcolor(YELLOW);
&line(x+1,y+1,x+1,y+3);line(x+9,y+1,x+9,y+3);
&line(x+1,y+9,x+1,y+7);line(x+9,y+9,x+9,y+7);
&line(x+1,y+1,x+3,y+1);line(x+1,y+9,x+3,y+9);
&line(x+9,y+1,x+7,y+1);line(x+9,y+9,x+7,y+9);
&void CoverBlock(int x,int y)
{setcolor(BLACK);
&line(x+1,y+1,x+1,y+3);line(x+9,y+1,x+9,y+3);
&line(x+1,y+9,x+1,y+7);line(x+9,y+9,x+9,y+7);
&line(x+1,y+1,x+3,y+1);line(x+1,y+9,x+3,y+9);
&line(x+9,y+1,x+7,y+1);line(x+9,y+9,x+7,y+9);
&void DrawBlack(int x,int y)
{setcolor(RED);
&line(x+5,y+3,x+2,y+7);
&line(x+2,y+7,x+8,y+7);
&line(x+8,y+7,x+5,y+3);
&void DrawWhite(int x,int y)
{setcolor(YELLOW);
&circle(x+5,y+5,3);
&void CoverPic(int x,int y)
{setfillstyle(1,BLACK);
&bar(x+2,y+2,x+8,y+8);
&void Score()
{int i,j,M,a,b;
&DrawBlack(370,198);
&DrawWhite(370,219);
&setfillstyle(1,BLACK);
&bar(419,189,449,229);
&setcolor(WHITE);
&rectangle(350,170,450,230);
&settextstyle(0, 0, 1);
&outtextxy(352,190,&Play I:&);
&outtextxy(352,200,&VS&);
&outtextxy(352,210,&Play II:&);
&for(i=0;i&20;i++)
&&& for(j=0;j&20;j++)
&&&&&& {if(Mark[i][j]==1)
if(Mark[i][j]==2) b++;
&for(i=0;i&2;i++)
&&&& switch (M/100)
&&&&&&&&&&
0:outtextxy(420,190+20*j,&0&);
&&&&&&&&&&&
1:outtextxy(420,190+20*j,&1&);
&&&&&&&&&&&
2:outtextxy(420,190+20*j,&2&);
&&&&&&&&&&&
3:outtextxy(420,190+20*j,&3&);
&&&&&&&&&&&
4:outtextxy(420,190+20*j,&4&);
&&&&&&&&&&
&&&& switch (M%100/10)
&&&&&&&&&&
0:outtextxy(430,190+20*j,&0&);
&&&&&&&&&&&
1:outtextxy(430,190+20*j,&1&);
&&&&&&&&&&&
2:outtextxy(430,190+20*j,&2&);
&&&&&&&&&&&
3:outtextxy(430,190+20*j,&3&);
&&&&&&&&&&&
4:outtextxy(430,190+20*j,&4&);
&&&&&&&&&&&
5:outtextxy(430,190+20*j,&5&);
&&&&&&&&&&&
6:outtextxy(430,190+20*j,&6&);
&&&&&&&&&&&
7:outtextxy(430,190+20*j,&7&);
&&&&&&&&&&&
8:outtextxy(430,190+20*j,&8&);
&&&&&&&&&&&
9:outtextxy(430,190+20*j,&9&);
&&&&&&&&&&
&&&& switch (M%10)
&&&&&&&&&&
0:outtextxy(440,190+20*j,&0&);
&&&&&&&&&&&
1:outtextxy(440,190+20*j,&1&);
&&&&&&&&&&&
2:outtextxy(440,190+20*j,&2&);
&&&&&&&&&&&
3:outtextxy(440,190+20*j,&3&);
&&&&&&&&&&&
4:outtextxy(440,190+20*j,&4&);
&&&&&&&&&&&
5:outtextxy(440,190+20*j,&5&);
&&&&&&&&&&&
6:outtextxy(440,190+20*j,&6&);
&&&&&&&&&&&
7:outtextxy(440,190+20*j,&7&);
&&&&&&&&&&&
8:outtextxy(440,190+20*j,&8&);
&&&&&&&&&&&
9:outtextxy(440,190+20*j,&9&);
&&&&&&&&&&
&&&&& M=b;j++;
&void MoveBlock(int x,int y)
&Counter=0;/*record the path walk*/
&&&&& {k=getch();
&&&&&& if(k==77&&x&290)
{CoverBlock(x,y);x+=10;PicBlock(x,y);}
&&&&&& else if(k==75&&x&100)
{CoverBlock(x,y);x-=10;PicBlock(x,y);}
&&&&&& else if(k==72&&y&100)
{CoverBlock(x,y);y-=10;PicBlock(x,y);}
&&&&&& else if(k==80&&y&290)
{CoverBlock(x,y);y+=10;PicBlock(x,y);}
&&&&&& else if(k==13&&Mark[H][L]==0)
&&&&&&&&&&&&&
{Counter=PreControl(x,y);
&&&&&&&&&&&&&&
if(Change==1&&Counter)
&&&&&&&&&&&&&&&&
{DrawBlack(x,y);
&&&&&&&&&&&&&&&&&
Mark[H][L]=1;
&&&&&&&&&&&&&&&&&
AftControl(Counter,x,y);
&&&&&&&&&&&&&&&&&
Change++;Counter=0;
&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&
else if(Change==2&&Counter)
&&&&&&&&&&&&&&&&
{DrawWhite(x,y);
&&&&&&&&&&&&&&&&&
Mark[H][L]=2;
&&&&&&&&&&&&&&&&&
AftControl(Counter,x,y);
&&&&&&&&&&&&&&&&&
Change--;Counter=0;
&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&
else if(k==27)
delay(1000);
&int PreControl(int x,int y)
{int TT,X,Y;
&T=0;TT=1;X=x;Y=y;
&while(x&290)/*right*/
&&&&& {x+=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1)
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(x&290&&y&100)/*right
&&&&& {x+=10;y-=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1)
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(y&100) /*up*/
&&&&& {y-=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1){T+=4;}
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(x&100&&y&100) /*up
and left*/
&&&&& {x-=10;y-=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1){T+=8;}
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(x&100)/*left*/
&&&&& {x-=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1){T+=16;}
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(x&100&&y&290)/*left
and down*/
&&&&& {x-=10;y+=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1){T+=32;}
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(y&290)/*down*/
&&&&& {y+=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1){T+=64;}
&&&&&& TT++;
&TT=1;x=X;y=Y;
&while(x&290&&y&290)/*down
and right*/
&&&&& {x+=10;y+=10;
if(Mark[H][L]==0||(Mark[H][L]==Change&&TT==1))
if(Mark[H][L]==Change&&TT!=1)
&&&&&& TT++;
&return T;
&int AftControl(int Counter,int x,int y)
&if(Counter-128&=0)
&& {Counter-=128;
&&& x+=10;y+=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
x+=10;y+=10;
&if(Counter-64&=0)
&& {Counter-=64;
&&& y+=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
&if(Counter-32&=0)
&& {Counter-=32;
&&& x-=10;y+=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
x-=10;y+=10;
&if(Counter-16&=0)
&& {Counter-=16;
&&& x-=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
&if(Counter-8&=0)
&&& {Counter-=8;
&&&& x-=10;y-=10;
&&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
&&&&&&&&&&
if(Change==1) DrawBlack(x,y);
&&&&&&&&&&
else DrawWhite(x,y);
&&&&&&&&&&
Mark[H][L]=C
&&&&&&&&&&
x-=10;y-=10;
&if(Counter-4&=0)
&& {Counter-=4;
&&& y-=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
&if(Counter-2&=0)
&& {Counter-=2;
&&& x+=10;y-=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
x+=10;y-=10;
&if(Counter-1&=0)
&& {Counter-=1;
&&& x+=10;
&&& while(Mark[H][L]!=Change)
{CoverPic(x,y);
if(Change==1) DrawBlack(x,y);
else DrawWhite(x,y);
Mark[H][L]=C
&if(Counter==0)
outtextxy(100,320,&ok!&);
outtextxy(350,100,&wrong!&);
&void main()
&gd=DETECT;
&initgraph(&gd,&gm,&&);
&Screen();
&DrawBlack(190,200);Mark[10][9]=1;
&DrawWhite(200,200);Mark[10][10]=2;
&DrawBlack(200,210);Mark[11][10]=1;
&PicBlock(200,200);
&MoveBlock(200,200);
&InitMark();
&closegraph();
地址:济南市舜耕路40号山东财经大学 邮编:250014
建议使用:800*600分辨率,IE4.0以上版本浏览器C语言游戏编程_C语言_最全面的网站教程
首页 上一页 01 下一页 尾页 &&转到第1页C语言课程设计_黑白棋游戏_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
C语言课程设计_黑白棋游戏
上传于||文档简介
&&C​语​言​课​程​设​计​_​黑​白​棋​游​戏
阅读已结束,如果下载本文需要使用
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩4页未读,继续阅读
你可能喜欢黑白棋_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
上传于||文档简介
&&C​语​言​课​程​设​计
阅读已结束,如果下载本文需要使用
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩18页未读,继续阅读
你可能喜欢

我要回帖

更多关于 简单的c语言程序 的文章

 

随机推荐