《五子棋控制台课设题目》由会员分享,可在线阅读,更多相关《五子棋控制台课设题目(25页珍藏版)》请在金锄头文库上搜索。
1、课设题目课设题目: : 五子棋游戏五子棋游戏 需求分析需求分析: 程序所能达到的功能1)输出棋盘界面菜单及图像 2)开始进入控制 3)黑白棋正确输入格式控制4)判断黑白输赢控制 5)正确计数对羿步数及下一步所要走的棋盘界面输出的形式以 20 行 20 列的坐标的形式输出输入的形式和输入值的范围用坐标方位确定所要输入棋子的准确位置(先输入横坐标,再输入纵坐标)输入值的范围都比须在 20 行 20 列的正方形中(0 x y; if(x 20 | y 20 ) std:cout = 400) std:cout x y; if(x 20 | y 20 ) std:cout = 400) std:cou
2、t m n; if(m 20 | n 20 ) std:cout = 400) std:cout = 0 ; i -) if(qipany-1i != o) break; if(qipany-1i = o) num1+; for( i = y ; i = 0 ; i -) if(qipanix-1 != o) break; if(qipanix-1 = o) num2+; for(i = 0 ; i =0 else return 0; 黑棋获胜情况类似上面情况判断 测试结测试结果:列出果:列出对对于于给给定的定的输输入所入所产产生的生的输输出出结结果果 )运行开始界面如下:进入游戏界面如下:黑
3、白棋落子情况如下:游戏结束结果如下: 附附录录:提交:提交带带注注释释的完整源程序:的完整源程序: #include #include #include using namespace std;/界面窗口颜色控制void SetColor(unsigned short ForeColor=4,unsigned short BackGroundColor=0) HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleTextAttribute(hCon,ForeColor|BackGroundColor); ; class five int
4、 x; int y; int m; int n; int num_xy; int num_mn; char qipan2020; /定义 20 行 20 列的数组 public: five(int X = 0,int Y =0,int M = 0,int N = 0,int Num_xy = 0,int Num_mn = 0) /构造函 数初始化 x = X; y = Y; m = M; n = N; num_xy = Num_xy; num_mn = Num_mn; for(int i = 0 ; i x y; if(x 20 | y 20 ) std:cout = 400) std:cou
5、t m n; if(m 20 | n 20 ) std:cout = 400) std:cout q; if(strcmp(q,“c“) five:showqipan(); void five:showqipan() /输出 20 行 20 列的坐标数值 int p=0,q=0; for(int i = 0 ; i =0) q+; if(q=0) q+; if(q= 0 ; i -) if(qipany-1i != o) break; if(qipany-1i = o) num1+; for( i = y ; i = 0 ; i -) if(qipanix-1 != o) break; if(
6、qipanix-1 = o) num2+; for(i = 0 ; i =0 else return 0; bool five:IsmnWin() /黑棋获胜实现函数 int num1=1,num2=1,num3=1,num4=1; for(int i = m ; i = 0 ; i -) if(qipann-1i != x) break; if(qipann-1i = x) num1+; for( i = n ; i = 0 ; i -) if(qipanim-1 != x) break; if(qipanim-1 = x) num2+; for(i = 0 ; i =0 else retu
7、rn 0; void main() SetColor(30,400);/界面颜色控制 std:cout temp; if(temp = 2) /游戏开始及退出控制 exit(1); if(temp = 1) std:cout “您选择了双人游戏,下面游戏开始:“ endl; for(int i = 0 ; ; i +) SetColor(100,600); a.getpointxy(); SetColor(10,10); a.print(); if(a.IsxyWin() std:cout “白棋胜!“ endl; break; a.getpointmn(); a.print(); if(a.IsmnWin() std:cout “黑棋胜!“ endl; break; std:cout “Press any key to EXITn“; getch();