C语言编写的五子棋源代码.docx

C语言编写的五子棋源代码.docx

ID:59830455

大小:13.26 KB

页数:7页

时间:2020-11-24

C语言编写的五子棋源代码.docx_第1页
C语言编写的五子棋源代码.docx_第2页
C语言编写的五子棋源代码.docx_第3页
C语言编写的五子棋源代码.docx_第4页
C语言编写的五子棋源代码.docx_第5页
资源描述:

《C语言编写的五子棋源代码.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、#include#include#include#include#defineMAXIMUS15//定义棋盘大小/*定义全局变量*/intp[MAXIMUS][MAXIMUS];//存储对局信息charbuff[MAXIMUS*2+1][MAXIMUS*4+3];//输出缓冲器intCx,Cy;//当前光标位置intNow;//当前走子的玩家,1代表黑,2代表白intwl,wp;//当前写入缓冲器的列数和行数位置char*sh

2、owText;//在棋盘中央显示的文字信息intcount;//回合数char*Copy(char*strDest,constchar*strSrc)//修改过的字符串复制函数,会忽略末端的{char*strDestCopy=strDest;while(*strSrc!=''){*strDest++=*strSrc++;}returnstrDestCopy;}voidInitialize()//初始化一个对局函数{inti,j;//循环变量showText="";//重置显示信息count=0

3、;//回合数归零for(i=0;i

4、下为边缘棋盘样式return"┏";elseif(i==MAXIMUS-1&&j==0)return"┓";elseif(i==MAXIMUS-1&&j==MAXIMUS-1)return"┛";elseif(i==0&&j==MAXIMUS-1)return"┗";elseif(i==0)return"┠";elseif(i==MAXIMUS-1)return"┨";elseif(j==0)return"┯";elseif(j==MAXIMUS-1)return"┷";return"┼";//中间的

5、空位}char*getCurse(inti,intj){//获得指定坐标交点位置左上格的样式,通过制表符来模拟光标的显示if(i==Cx){if(j==Cy)return"┏";elseif(j==Cy+1)return"┗";}elseif(i==Cx+1){if(j==Cy)return"┓";elseif(j==Cy+1)return"┛";}return" ";//如果不在光标附近则为空}voidwrite(char*c){//向缓冲器写入字符串Copy(buff[wl]+wp,c);wp+=

6、strlen(c);}voidln()//缓冲器写入位置提行{wl+=1;wp=0;}voidDisplay()//将缓冲器内容输出到屏幕{inti,l=strlen(showText);//循环变量,中间文字信息的长度intOffset=MAXIMUS*2+2-l/2;//算出中间文字信息居中显示所在的横坐标位置if(Offset%2==1)//如果位置为奇数,则移动到偶数,避免混乱{Offset--;}Copy(buff[MAXIMUS]+Offset,showText);//讲中间文字信息复制到

7、缓冲器if(l%2==1)//如果中间文字长度为半角奇数,则补上空格,避免混乱{*(buff[MAXIMUS]+Offset+l)=0x20;}system("cls");//清理屏幕,准备写入for(i=0;i

8、变量wl=0;wp=0;for(j=0;j<=MAXIMUS;j++)//写入出交点左上角的字符,因为需要打印棋盘右下角,所以很以横纵各多一次循环{for(i=0;i<=MAXIMUS;i++){write(getCurse(i,j));//写入左上角字符if(j==0

9、

10、j==MAXIMUS)//如果是棋上下盘边缘则没有连接的竖线,用空格填充位置{if(i!=MAXIMUS)write(" ");}else//如果在棋盘中间则用竖线承接上下{if(i=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。