用VS软件开发“中国象棋“游戏

news/2025/4/2 2:39:03/

 

1.很直观地去看这个中国象棋的界面,数一下它有多少行和多少列.

10行,9列:要注意这里数的是安放象棋的位置,有10行9列

这里我们首先想到的必然是二维数组,每一个行列交叉的点都设置成二维数组a[i][j]这样的格式,以此来确定棋盘上面每一个棋子的位置和走向.

 

我们把上面安放棋子的二维数组定义成一个地图,也就是map[i][j]的格式,但同时要注意,每一个象棋棋子都有行,列,颜色,是否过河和名称(也就是什么棋子)几种定义区分.

那么这里我们就需要把棋子定义成一个结构.如下:

struct  Chesscoordinate//棋子综合信息
{int x;int y;DWORD type;  //颜色bool river;//是否过河int id;
};

当定义了棋子综合信息,我们是不是需要每一个信息都拓展一下?

x代表的是在棋盘上面的列,也就是竖行,y代表的是棋子在棋盘上面的行,也就是横线,而type代表的棋子的颜色,棋子颜色可以分为黑色和红色两种;river设置成bool型的,只需要判断棋子是否过河就可以了.最后id定义的是棋子上面的名称,比如将,帅等.

接下来我们就来VS当中进行棋子的程序定义拓展:
 

#define distance  35//窗口线与棋盘边界线的距离
#define   longth  65//棋盘方格的长
#define   

http://www.ppmy.cn/news/656680.html

相关文章

一款开源的中国象棋人工智能程序

源码地址: https://github.com/xiongfang/Chinese-Chess 工程:Unity项目。可以用Unity引擎打开 语言:C# 算法:神经网络算法遗传算法 目录结构: Assets/Fonts 字体资源 Assets/Models 所有模型资源,包括象棋和棋盘模型 Asset…

一个象棋手机游戏的源代码

作者:DLUT_608 文章来源:J2ME开发网 最近看到了一些五子棋,扫雷的代码讲解的文章,我也就写了个手机的象棋游戏,写的不是太全面,但还是能实现基本功能,共享出来供大家交流交流。 先介绍一下我…

象棋对弈小软件

星期五, 在网上 整理完socket通信的代码, 我就着手开始用mfc socket 弄一个 局域网的1对1 的象棋对弈软件。晚上回到家后开始着手编码,我的主要思想是: 1. 用mfc 创建一个单文档工程, 用 LineTo、MoveTo 、Eclipse 等…

centos安装k8s

1. 前置 俩台centos服务器,不过多说明,教程基于centos 2. hosts配置 我这样配置,最后没发现那块有联动,望大佬更正 vim /etc/hosts 在末尾添加 192.***** master 192.*** note3. 防火墙 说是要关闭防火墙,我俩台服务器都是基于内网&…

了解浏览器缓存

什么是HTTP缓存,如何工作的? 当我们打开一个页面时,会向服务端发起很多次请求,如下图打开百毒首页,发起了HTML、各种图片、JS、CSS等资源共101次请求。这里面很多资源并不会频繁变化,每次打开页面都重新请…

哈利波特分院考试(HP)

#include <iostream> #include<windows.h> #include<ctime> using namespace std; int main(){ srand(time(NULL)); int n rand()%4; switch (n) { case 1: cout<<"你被魔法帽子分到了:"<<endl; cou…

霍格沃兹遗产Hogwarts Legacy Mac高清壁纸

霍格沃兹遗产Hogwarts Legacy是一款基于哈利波特的世界观打造的魔幻世界冒险游戏。在这里我们可以进入到魔法学校之中学习各种出色的魔法技能来与一些恶势力进行对抗。 霍格沃兹遗产Hogwarts Legacy

c++哈利波特

//转自&#xff1a;https://paste.ubuntu.com/p/gmhQk8bgGj/ //c yourcraft v1.12.1 //感谢大家的支持&#xff0c;我还会继续出的&#xff01; //这次增加了--商店&#xff0c;怪物&#xff0c;还修复了一些小Bug #include<bits/stdc.h> #include<time.h> #includ…