当前位置:首页 > 代码 > 正文

五子棋游戏的源代码(五子棋源代码c++,完美版)[20240430更新]

admin 发布:2024-04-30 11:46 109


今天给各位分享五子棋游戏的源代码的知识,其中也会对五子棋源代码c++,完美版进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

五子棋源代码html

js代码:

定义canvas及黑白棋变量

font color="#2f4f4f" face="微软雅黑" size="3"var canvas;

var context;

var isWhite = true;//设置是否该轮到白棋

var isWell = false;//设置该局棋盘是否赢了,如果赢了就不能再走了

var img_b = new Image();

img_b.src = "images/b.png";//白棋图片

var img_w = new Image();

img_w.src = "images/c.png";//黑棋图片/font

为棋盘的二维数组用来保存棋盘信息

font color="#2f4f4f" face="微软雅黑" size="3" var chessData = new Array(15);//初始化0为没有走过的,1为白棋走的,2为黑棋走的

for (var x = 0; x 15; x++) {

chessData[x] = new Array(15);

for (var y = 0; y 15; y++) {

chessData[x][y] = 0;

}

}/font

绘制棋盘的线

font color="#2f4f4f" face="微软雅黑" size="3" for (var i = 0; i = 640; i += 40) {

context.beginPath();

context.moveTo(0, i);

context.lineTo(640, i);

context.closePath();

context.stroke();

context.beginPath();

context.moveTo(i, 0);

context.lineTo(i, 640);

context.closePath();

context.stroke();

}

}/font

判断该棋局的输赢

font color="#2f4f4f" face="微软雅黑" size="3" if (count1 = 5 || count2 = 5 || count3 = 5 || count4 = 5) {

if (chess == 1) {

alert("白棋赢了");

}

else {

alert("黑棋赢了");

}

isWell = true;//设置该局棋盘已经赢了,不可以再走了

}/font

html代码:

font color="#2f4f4f" face="微软雅黑" size="3"body onload="drawRect()"

div

canvas width="640" id="canvas" onmousedown="play(event)" height="640"你的浏览器不支持HTML5 canvas ,请使用 google chrome 浏览器 打开.

/canvas

/div

/body/font

找五子棋源代码c++

#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++)

coutsetw(3)setfill(' ')k;

coutendl;

for(i=1;i=M;i++)

{

coutsetw(3)setfill(' ')i;

for(j=1;j=N;j++)

{

weizhi[i][j]='-';

coutsetw(3)setfill(' ')weizhi[i][j];

}

coutendl;

}

while(flag==0)

{

//红方落子

cout"请红方输入落子位置:"endl;

loop1:

cout"请输入落子的行数:";

cinx;

cout"请输入落子的列数:";

ciny;

if(weizhi[x][y]=='-')

{

weizhi[x][y]='*';

for(k=0;k=N;k++)

coutsetw(3)setfill(' ')k;

coutendl;

for(i=1;i=M;i++)

{

coutsetw(3)setfill(' ')i;

for(j=1;j=N;j++)

coutsetw(3)setfill(' ')weizhi[i][j];

coutendl;

}

}

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"请输入落子的行数:";

cinx;

cout"请输入落子的列数:";

ciny;

if(weizhi[x][y]=='-')

{

weizhi[x][y]='#';

for(k=0;k=N;k++)

coutsetw(3)setfill(' ')k;

coutendl;

for(i=1;i=M;i++)

{

coutsetw(3)setfill(' ')i;

for(j=1;j=N;j++)

coutsetw(3)setfill(' ')weizhi[i][j];

coutendl;

}

}

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;

}

我运行过,没有错误.

急求:五子棋的源代码(数据结构),每一步都要有解释的!!!

#includeiostream.h#includestdlib.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(); coutplayer1"赢了。"endl; FirstWin++;//记录赢局数 break;//终止本次循环 } s.PrintBoard();//同上 s.GameStart(player2,x,y,'X'); N++; if(s.whichwin(x-1,y-1,'X')) { s.PrintBoard(); coutplayer2"赢了。"endl; SecondWin++; break; } if(N==(Num*Num)) { cout"和棋!"; Draws++;//记录平局数 break; } } s.Choice(choice);//给玩家提供一次选择是否再玩的机会 } //输出游戏输赢次数 coutplayer1"赢了"FirstWin"次"endl; coutplayer2"赢了"SecondWin"次"endl; cout"和"Draws"次"endl; cout"谢谢使用。"endl; cout"任意键继续。"endl; cin.get();//很必要的,目的是空度换行字符}//*******************************************************************//定义公有成员函数void T::PrintMenu(){ cout"欢迎进入五子棋游戏!\n"; cout"******************************************"endl; cout"\t游戏说明:"endlendl; cout"1.第一个玩家用O第二个玩家用X;"endl; cout"2.请根据提示输入所要走的行和列;"endl; cout"3.按Enter下棋。"endl; cout"

五子棋游戏的源代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于五子棋源代码c++,完美版、五子棋游戏的源代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/877.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载