C语言做的中国象棋,分享,问怎么在WIN7下运行

C语言做的中国象棋,分享,问怎么在WIN7下运行,第1张

#include <stdio.h>

#include <memory.h>

typedef struct

{

int x, y

}item

item move[4] = {{-2,1}, {-1,2}, {1,2}, {2,1}}

int map[5][9], sx, sy

//判断是否在地图中,防止越界

int checkIn(int x, int y)

{

if(x >= 0 &&x <= 4 &&y >= 0 &&y <= 8)

return 1

return 0

}

//输出最终结果

void output()

{

int i, j

for(i = 0i <= 4i++)

{

for(j = 0j <= 8j++)

printf("%d ",map[i][j])

putchar('\n')

}

printf("共计%d步。", map[0][8])

}

//从x y开始寻找能否到达终点,能返回1,不能返回0,step表示当前的步数。

int findPath(int x, int y, int step)

{

int i

map[x][y] = step

//终点

if(x == 0 &&y == 8)

{

output()

return 1

}

//向右边4个方向前进

for(i = 0i <4i++)

if(checkIn(x+move[i].x, y+move[i].y))

if(findPath(x+move[i].x, y+move[i].y, step+1) == 1)

return 1

//四个方向均无法到达终点,回溯并返回0

map[x][y] = 0

return 0

}

int main(int argc, char ** argv)

{

memset(map, 0, sizeof(map))

printf("请输入起点<x,y>\n")

scanf("%d,%d", &sx, &sy)

findPath(sx, sy, 1)

return 0

}

象棋软件好的有:

1、象棋旋风

它采用独特的位棋盘设计,运算速度快,知识更丰富,出棋准确率极高,是研究残局的不二神器。在实战过程中,它攻守平衡,招法纯正,对空头炮、窝心马、多子归边等危险棋型有完善的评估,是业余棋手提高棋力的有力助手,并已被多个象棋专业省队使用。

2、象棋名手

象棋名手是一款付费象棋软件,属于攻杀型棋软,对中国象棋的各种杀形敏感,擅长在激烈的对攻中获取优势,常有弃子控制局势至最终入局的表现;在平稳局面下也能控制局势,寻找机会扩大先手,获取进一步优势;支持名手格式残局库评估库,大幅提高软件对中残局转换的处理能力和残局的棋力。软件曾获得中国计算机博弈锦标赛的多届中国象棋冠军。

3、小虫象棋

收费制中国象棋软件,随着版本的不断更新升级,已采用了更先进的搜索算法,引擎的运行效率提高了200%以上,直接的棋力提升更高达400elo。作为象棋软件排名前十,小虫象棋棋风细腻,能攻善守,对中国象棋的各种典型杀法的审局处理比较到位,能很好地抓住对方的防守漏洞,必要时弃子攻杀,一举擒王。

4、象棋巫师

象棋奇兵基于Bitboard设计,棋力高超稳定,曾荣获第十届奥林匹克中国象棋电脑软件大赛冠军。象棋奇兵在1.02版本后,推出了高级版本,支持多线程运算,为中国象棋软件开先河,其高超的棋力、全面的功能受到棋友的广泛好评。不过以2006年棋软大赛为标志,象棋奇兵的棋力开始逐渐落后于顶尖的象棋旋风、佳佳象棋等,2009年后该软件终止了开发,终极版本为2009比赛版。

5、佳佳象棋

佳佳象棋GGzero从2009年开始崭露头角,并一举夺得当年象棋软件大赛的亚军。佳佳象棋变幻莫测的出招与在对攻局面下的凌厉攻杀让人印象深刻。作为十大中国象棋软件之一,佳佳象棋改编自国象Leela-Zero,可免费使用。它应用了谷歌DeepMind公司提出的alpha-zero深度强化学习算法,是世界上首款达到商业引擎水平的显卡加速象棋引擎。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/10059144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存