Linux下黑白棋c语言程序,黑白棋(C语言源程序)
《黑白棋(C语言源程序)》由会员分享,可在线阅读,更多相关《黑白棋(C语言源程序)(8页珍藏版)》请在人人文库网上搜索。
1、黑白棋C语言程序编辑#includegraphics.h/*图形系统头文件*/#defineLEFT0x4b00/*光标左键值*/#defineRIGHT0x4d00/*光标右键值*/#defineDOWN0x5000/*光标下键值*/#defineUP0x4800/*光标上键值*/#defineESC0x011b/*ESC键值*/#defineENTER0x1c0d/*回车键值*/inta88=0,key,score1,score2;/*具体分数以及按键与存放棋子的变量*/charplayone3,playtwo3;/*两个人的得分转换成字符串输出*/voidplaytoplay(void)。
2、;/*人人对战函数*/voidDrawQp(void);/*画棋盘函数*/voidSetPlayColor(intx);/*设置棋子第一次的颜色*/voidMoveColor(intx,inty);/*恢复原来棋盘状态*/intQpChange(intx,inty,intz);/*判断棋盘的变化*/voidDoScore(void);/*处理分数*/voidPrintScore(intn);/*输出成绩*/voidplayWin(void);/*输出胜利者信息*/*主函数*/voidmain(void)intgd=DETECT,gr;initgraph(&gd,&gr,c:tc);/*初始化图。
3、形系统*/DrawQp();/*画棋盘*/playtoplay();/*人人对战*/getch();closegraph();/*关闭图形系统*/voidDrawQp()/*画棋盘*/inti,j;score1=score2=0;/*棋手一开始得分都为0*/setbkcolor(BLUE);for(i=100;i=64-score1-score2)/*如果尝试超过空格数则停步*/MoveColor(x,y);fillellipse(x,y,15,15);break;elsecontinue;/*如果按键无效*/DoScore();/*分数的改变*/break;/*棋盘变化了,则轮对方走棋*/e。
4、lse/*已经有棋子就继续按键*/continue;else/*四个方向按键的判断*/if(key=LEFT&x120)/*左方向键*/MoveColor(x,y);fillellipse(x,y,15,15);SetPlayColor(t);x-=40;fillellipse(x,y,15,15);elseif(key=RIGHT&x80)/*右方向键*/MoveColor(x,y);fillellipse(x,y,15,15);SetPlayColor(t);x+=40;fillellipse(x,y,15,15);elseif(key=UP&y120)/*上方向键*/MoveColor(。
5、x,y);fillellipse(x,y,15,15);SetPlayColor(t);y-=40;fillellipse(x,y,15,15);elseif(key=DOWN&y1)/*判断左边*/for(k=j-1;k=0;k-)if(aik=aij|!aik)break;if(aik!=0&k=0)for(kk=j-1;kkk&k=0;kk-)aikk=aij;fillellipse(120+i*40,120+kk*40,15,15);if(kk!=j-1)yes=1;if(i1)/*判断上边*/for(k=i-1;k=0;k-)if(akj=aij|!akj)break;if(akj!。
6、=0&k=0)for(kk=i-1;kkk&k=0;kk-)akkj=aij;fillellipse(120+kk*40,120+j*40,15,15);if(kk!=i-1)yes=1;if(i1&j=0&kk=0&kkk&k=0;ii-,jj+)aiijj=aij;fillellipse(120+ii*40,120+jj*40,15,15);if(ii!=i-1)yes=1;if(i1)/*左下*/for(k=i+1,kk=j-1;k=0;k+,kk-)if(akkk=aij|!akkk)break;if(akkk!=0&k=0)for(ii=i+1,jj=j-1;ii1&j1)/*左上*。
7、/for(k=i-1,kk=j-1;k=0&kk=0;k-,kk-)if(akkk=aij|!akkk)break;if(akkk!=0&k=0&kk=0)for(ii=i-1,jj=j-1;iik&k=0;ii-,jj-)aiijj=aij;fillellipse(120+ii*40,120+jj*40,15,15);if(ii!=i-1)yes=1;if(iscore1)/*开始判断最后的结果*/outtextxy(100,50,blackwin!);elseif(score2score1)outtextxy(100,50,whitewin!);elseouttextxy(60,50,youallwin。
Linux下黑白棋c语言程序,黑白棋(C语言源程序)相关推荐
- Linux下黑白棋c语言程序,黑白棋的c语言代码
花了我多少冤枉时间和精力的黑白棋c语言代码 #include "graphics.h" #define LEFT 0x4b00 #define RIGHT 0x4d00 #defi ...
- python大作业黑白棋记分_Python实现黑白棋人机对弈
Python实现黑白棋人机对弈 规则 黑白棋的每颗棋子由黑白两色组成,一面白,一面黑.每次落子,把本方颜色的棋子放在棋盘的空格上,若在横.竖.斜八个方向的任一方向上有本方棋子,则被夹在中间的对手棋子全 ...
- 8255a初始化c语言程序,8255A的c语言程序.doc
8255A的c语言程序 8255A的c语言程序 [实例24]用8243扩展I/O端口 #include sbit ContrBit0=P1^0; sbit ContrBit1=P1^1; sbit C ...
- c语言大作业黑白棋,C语言编写黑白棋游戏源代码.doc
C语言编写的黑白棋游戏源代码 /*3.3.4 源程序*/ #include "graphics.h" /*图形系统头文件*/ #define LEFT 0x4b00 /*光标左键值 ...
- 关于个人的第二个程序——黑白棋续
距离我上次的五子棋编写已经过去一个礼拜了.在此分享一下我的关于黑白棋的一些新的体会. 首先,在我的上一篇博客里面提到的吃子不完善问题,导致变成了"黑白随机吃子棋",但其实许多 ...
- Go语言版黑白棋(十一):机器落子
功能说明 机器为白子. 机器优先在4个角落落子,如果这4个位置不能吃子,则落在能吃子最多的位置. 示例代码 package mainimport ("fmt""os&qu ...
- Go语言版黑白棋(十):棋子个数统计、胜负判断
功能说明 增加棋子个数统计.胜负判断功能,游戏结束后可选择继续游戏. 示例代码 package mainimport ("fmt""os""strco ...
- c语言程序设计黑白棋游戏,C语言课程设计_黑白棋游戏
C语言课程设计_黑白棋游戏 C语言课程设计_黑白棋游戏 #include "graphics.h" /*图形系统头文件*/ #define LEFT 0x4b00 /*光标左键值* ...
- 关于我的第二个程序——黑白棋
自从上次的五子棋之后,黑白棋已经做了半个多月了,这里写下自己在这短时间的一些感悟,更多的是犯的错误,希望能给其他小白一点借鉴. 另外要说的是,黑白棋还没做完,所以到后来的话,可能会有很多的问题不 ...
最新文章
- ToDictionary的用法
- 山景智能创始人黄勇:银行要从数据智能转向业务智能,今天的金融服务难以支撑未来 | MEET2021...
- DPDK vhost-user研究(九)
- watch深度监听数组_vue watch普通监听和深度监听实例详解(数组和对象)
- ASP.NET MVC 动态选择VIEW
- 宝骏530中控屏怎么安装软件_试驾2020款宝骏530:大屏加六座,就这么直接
- 协程-gevent(python版)
- 诗与远方:无题(三十五)- 曾经写给妹子的一首诗
- C程序中对时间的处理——time库函数详解转
- adb 最大连接_工具集 | Android Studio—使用 WI-FI 进行 ADB 调试
- 天猫精灵X1获德国红点设计大奖
- android nexus 6尺寸,谷歌Nexus 6详细配置曝光 原生Android大杀器
- FZU 2128 最长子串
- org.apache.commons.fileupload.DiskFileUpload/FileItem
- OSAL 添加一个LED任务
- java毕设项目——图书借阅管理系统(附源码课件)
- 3D深度传感ToF技术的基本原理解析
- 基于C++模板类编程数据结构图的操作---注意error:2248的解析
- vue 富文本 quill 编辑器,实现图片上传到服务器,以及实时字数统计
- 【分享】神龙斗士123部下载链接,魔神英雄传辽宁艺术90年代配音版