(完整版)数据结构毕业课程设计-五子棋 联系客服

发布时间 : 星期日 文章(完整版)数据结构毕业课程设计-五子棋更新完毕开始阅读c33653aaaff8941ea76e58fafab069dc502247d2

真正意义上的悔棋。

二、详细设计

2.1 函数一览

2.2 “封面”的设计

首先还是讲些题外话,该程序由于与控制台有密切的关系,于是在代码中使用了不少 conio.\

printf( \ 欢迎试用五子棋系统\\n\ printf( \ \ for( int i= 0; i< strlen( Wel ); ++i ) {

putchar( Wel[i] );

Sleep( 200 ); 可使字符一个一个的输出 }

putchar( 10 ); 换行对应的 ASCII 码值为十进制的 10 }

2.3 二维数组与控制台

二维数组是用来使得整个棋盘的信息全部记录下来,因此在结构体中

二维数组的声明是最关键的。 struct {

int Status[MAX2+2][MAX2+2]; int MINBOX; int Step;

char Graph[3][3]; char *FillGraph[9]; Sta Stack; } ChessBoard;

声明全局变量是为了使得各函数能够更方便地使用到这个结构体,现假设某点的坐标为( 1, 1 ),那么如何在屏幕上打印这个点呢?这就利用到了ChangeCoordinates( )与gotoxy( ) 函数,前者使坐标进行转换,后者让光标走到所指的那个点,其实主要还是因为类似“┣、╋、●、○”在横向上所占都是两个英文字母的距离,因此在控制台上反映的就是和数组下标倍数关系了。部分代码如下:

HANDLE ( true; 该次走棋操作有效 } else { … } }

if( Opreat[0]== -32&& Opreat[1]== 72|| Opreat[0]== 'w'|| Opreat[0]==