https://www.myziyuan.com/
- erpang666
- ....bmp ;wuzi.ini res .\qzb.bmp ..h StdAfx.H RoundButton1..\.cpp Dlgoption.h readme.txt Release .rc2.h ROUNDBUTTON.CPP ROUNDBUTTON;qzh.\7.exe ..bmp resource.dep 7.dsp 7.cpp StdAfx.h CDC2.......\mask..;7...h 7.rc 7Dlg.h dim.h Dlgoption.\7.ico ...\...cpp 7Dlg.cpp CDC2CWinApp CDialog CDataExchange CWnd CBitmap CSize LoadBitmap CreateCompatibleDC SelectObject DeleteObject LoadIcon GetSystemMenu CMenu CString LoadString AppendMenu GetModuleFileName GetDC EnableWindow IsIconic CPaintDC SendMessage GetSystemMetrics CRect GetClientRect DrawIcon CPoint MessageBox WritePrivateProfileString GetPrivateProfileString CDC CheckRadioButton CRgn SetPixelV CButton SetWindowRgn CreateEllipticRgnIndirect ClientToScreen GetParent ScreenToClient MoveWindow SaveDC GetSysColor GetWindowText CreateEllipticRgn SelectClipRgn SetBkMode DrawState TextOut RestoreDC BitBlt 7.cpp 7..\.cpp RoundButton1
- 2021-03-23 18:35:01
- 飞创科技
- #include "iostream"#include <iomanip>using namespace std;const int M=20;const int N=20;int main(){char weizhi[M][N];int k,i,j,x,y,flag=0;cout<<"欢迎使用简易双人对战五子棋游戏"<<endl;cout<<"五子棋棋谱如下:"<<endl;for(k=0;k<=N;k++)cout<<setw(3)<<setfill(' ')<<k;cout<<endl;for(i=1;i<=M;i++){cout<<setw(3)<<setfill(' ')<<i;for(j=1;j<=N;j++){weizhi[i][j]='-';cout<<setw(3)<<setfill(' ')<<weizhi[i][j];}cout<<endl;}while(flag==0){//红方落子cout<<"请红方输入落子位置:"<<endl;loop1:cout<<"请输入落子的行数:";cin>>x;cout<<"请输入落子的列数:";cin>>y;if(weizhi[x][y]=='-'){weizhi[x][y]='*';for(k=0;k<=N;k++)cout<<setw(3)<<setfill(' ')<<k;cout<<endl;for(i=1;i<=M;i++){cout<<setw(3)<<setfill(' ')<<i;for(j=1;j<=N;j++)cout<<setw(3)<<setfill(' ')<<weizhi[i][j];cout<<endl;}}else{cout<<"你不能在这落子,请重新选择落子位置:"<<endl;goto loop1;}//判断胜利for(i=1;i<=M-4;i++){for(j=1;j<=N-4;j++){if(weizhi[i][j]=='*' && weizhi[i][j+1]=='*' && weizhi[i][j+2]=='*' && weizhi[i][j+3]=='*' && weizhi[i][j+4]=='*'){cout<<"恭喜红方获得简易双人对战五子棋的胜利!耶~~~"<<endl;flag=1;break;}if(weizhi[i][j]=='*' && weizhi[i+1][j]=='*' && weizhi[i+2][j]=='*' && weizhi[i+3][j]=='*' && weizhi[i+4][j]=='*'){cout<<"恭喜红方获得简易双人对战五子棋的胜利!耶~~~"<<endl;flag=1;break;}if(weizhi[i][j]=='*' && weizhi[i+1][j+1]=='*' && weizhi[i+2][j+2]=='*' && weizhi[i+3][j+3]=='*' && weizhi[i+4][j+4]=='*'){cout<<"恭喜红方获得简易双人对战五子棋的胜利!耶~~~"<<endl;flag=1;break;}if(flag==1)break;}}//蓝方落子cout<<"请蓝方输入落子位置:"<<endl;loop2:cout<<"请输入落子的行数:";cin>>x;cout<<"请输入落子的列数:";cin>>y;if(weizhi[x][y]=='-'){weizhi[x][y]='#';for(k=0;k<=N;k++)cout<<setw(3)<<setfill(' ')<<k;cout<<endl;for(i=1;i<=M;i++){cout<<setw(3)<<setfill(' ')<<i;for(j=1;j<=N;j++)cout<<setw(3)<<setfill(' ')<<weizhi[i][j];cout<<endl;}}else{cout<<"你不能在这落子,请重新选择落子位置:";goto loop2;}//判断胜利for(i=1;i<=M-4;i++){for(j=1;j<=N-4;j++){if(weizhi[i][j]=='#' && weizhi[i][j+1]=='#' && weizhi[i][j+2]=='#' && weizhi[i][j+3]=='#' && weizhi[i][j+4]=='#'){cout<<"恭喜蓝方获得简易双人对战五子棋的胜利!耶~~~"<<endl;flag=1;break;}if(weizhi[i][j]=='#' && weizhi[i+1][j]=='#' && weizhi[i+2][j]=='#' && weizhi[i+3][j]=='#' && weizhi[i+4][j]=='#'){cout<<"恭喜蓝方获得简易双人对战五子棋的胜利!耶~~~"<<endl;flag=1;break;}if(weizhi[i][j]=='#' && weizhi[i+1][j+1]=='#' && weizhi[i+2][j+2]=='#' && weizhi[i+3][j+3]=='#' && weizhi[i+4][j+4]=='#'){cout<<"恭喜蓝方获得简易双人对战五子棋的胜利!耶~~~"<<endl;flag=1;break;}if(flag==1)break;}}}return 0;}二人对弈五子棋游戏,棋子分为黑白两种;当同一种颜色的棋子实现五子连珠时即为获胜;通过按下棋盘上的状态键,用以标示该黑子落子还是白子落子;运行成功;你可以在这基础上修改一下
- 2021-02-12 12:12:59
- 好牛通
- 急求:五子棋的源代码(数据结构),每一步都要有解释的!!!,#include<iostream.h>#include<stdlib.h>#define Num 15//********************************************************//类class T//定义类用来封装所有相关函数和变量{char board[Num][Num];//用数组board[Num][Num]来定义棋盘public:void PrintMenu(); //打印菜单 说明游戏规则和方法 void PrintBoard(); //打印棋盘void GameStart(char*,int &,int &,char); //下棋int whichwin(int,int,char); //判断那个选手赢void Choice(char &); //是否再玩void Setboard(); //重置棋盘};//****************************************************************//main主函数void main ()//主函数{T s;//说明类的一个对象s s.PrintMenu();//通过s调用PrintMenu函数提示如何游戏char player1[20],player2[20];//玩家姓名int FirstWin=0,SecondWin=0,Draws=0,x,y,N;//说明变量,赋初值为0以待计算输赢结果char choice='Y';cin.ignore(20,'\n');//输入输出流,前面如果有输入把输入行所有字符取空,以便后面的输入从新的一行开始cout<<"请输入第一个玩家姓名:";cin.getline(player1,20);//连续读取数据cout<<"请输入第二个玩家姓名:";cin.getline(player2,20);while(choice=='Y'||choice=='y')//条件成立,执行{ s.Setboard();//调用Setboard函数 N=0;while(N<=(Num*Num)){s.PrintBoard();//打印棋盘s.GameStart(player1,x,y,'O');N++;//记录已下棋子数if(s.whichwin(x-1,y-1,'O'))//返回值不为0则条件成立{s.PrintBoard();cout<<player1<<"赢了。"<<endl;FirstWin++;//记录赢局数break;//终止本次循环}s.PrintBoard();//同上s.GameStart(player2,x,y,'X');N++;if(s.whichwin(x-1,y-1,'X')){s.PrintBoard();cout<<player2<<"赢了。"<<endl;SecondWin++;break;}if(N==(Num*Num)){cout<<"和棋!";Draws++;//记录平局数break;}}s.Choice(choice);//给玩家提供一次选择是否再玩的机会}//输出游戏输赢次数cout<<player1<<"赢了"<<FirstWin<<"次"<<endl;cout<<player2<<"赢了"<<SecondWin<<"次"<<endl;cout<<"和"<<Draws<<"次"<<endl;cout<<"谢谢使用。"<<endl;cout<<"任意键继续。"<<endl;cin.get();//很必要的,目的是空度换行字符}//*******************************************************************//定义公有成员函数void T::PrintMenu(){cout<<"欢迎进入五子棋游戏!\n";cout<<"******************************************"<<endl;cout<<"\t游戏说明:"<<endl<<endl;cout<<"1.第一个玩家用O第二个玩家用X;"<<endl;cout<<"2.请根据提示输入所要走的行和列;"<<endl;cout<<"3.按<Enter>下棋。"<<endl;cout<<"
- 2021-02-12 12:12:59