三.函数功能描述
(1)DrawBoard()
函数原型:void DrawBoard()
DrawBoard()函数用于画棋盘。棋盘是由18*18交叉组成的。该函数主要是调用系统函数line()来实现的,同时也输出一些提示性文字,如按键操作。
(2)DrawCircle()
函数原型:void DrawCircle(int x,int y,int color)
DrawCircle()函数用于在指定的坐标,用指定的颜色画圆圈。本程序中,是用小圆圈来表示棋子的,不同的颜色表示不同的行棋方。其中X、Y指明所画圆圈的圆心,半径大小在函数中设定;color用以表示所画圆圈的颜色,有两种颜色,白色和红色,白色圆圈表示Player1的棋子,红色圆圈则表示Player2的棋子。该函数主要是调用系统函数circle()来实现的。
(3)Alternation()
函数原型:void Alternation()
Alternation()用于在两个行棋者之间交换行棋顺序,如果当前是Player1行棋,则转换后变为Player2;反之亦然。用全局变量flag标识。
(4)JudgePlayer()
函数原型: void JudgePlayer()
JudgePlayer()函数主要是根据不同的行棋方来画不同颜色的圆圈,对行棋方的判断则是根据全局变量flag来进行的。该函数是调用DrawCircle()函数来实现的。
(5)Done()
函数原型:void Done()
Done()函数是本程序的核心函数,主要用于实现下棋操作。该函数首先获取下棋者从键盘按下的键值(LEFT、RIGHT、UP、DOWN、SPACE或ESC),根据获取的键值作相应的操作。对于每一种操作,都要首先判断行棋者棋子的落子范围是否正确,即落子是否在棋盘内,对于不在棋盘内的落子不予处理;对于落子在棋盘内的操作,则根据数组status[i][j]((i,j)表示当前位置的坐标)中保存的当前位置的状态来进行,如果状态值为0,则可以按照行棋者的要求移动棋子,并在移动棋子后把(i,j)位置的状态值改为flag(1表示Player1,2表示Player2);如果获取的键值为ESC,则退出程序。
(6)ResultCheck()
函数原型:int ResultCheck(int x,int y)
ResultCheck()函数用于判断当前行棋者是否获胜。其中X、Y表示当前行棋者最后的落子坐标。该函数是以(X,Y)坐标为基准,判断4个方向(水平、竖直、从左上角到右下角和从右上角到左下角)上是否有5个连续相同的棋子(即颜色相同的圆圈),只要出现任何一个方向上有满足条件的棋子则当前行棋方就获胜。
(7)WelcomeInfo()
函数原型:void WelcomeInfo()
WelcomeInfo()函数用于输出屏幕欢迎信息和一些提示性信息,如按键操作等。
(8)ShowMessage()
函数原型:void ShowMessage()
论文网http://www.youerw.com/
ShowMessage()函数用于显示当前行棋方,表示该轮到哪一方行棋了。
五、调试过程
在编写程序的过程中遇到了很多难题,例如编写程序的拼写问题啦,一些函数的使用问题,并且这种问题出现的形式,提醒你的方式都是通过全英文的方式,英语理解起来比较困难,都是一个人通过一遍遍的调试,利用金山词霸、谷歌翻译的方法把英文翻译过来,拜托了一些同学帮我一起找错误,真是辛苦他们了,下面就是出现频率最高的几个错误了。
上一页 [1] [2] [3] [4] 下一页
C语言五子棋游戏程序设计_结构化程序设计课程设计 第2页下载如图片无法显示或论文不完整,请联系qq752018766