研究c++课程设计报告

研究c++课程设计报告

ID:23339881

大小:87.00 KB

页数:26页

时间:2018-11-07

研究c++课程设计报告_第1页
研究c++课程设计报告_第2页
研究c++课程设计报告_第3页
研究c++课程设计报告_第4页
研究c++课程设计报告_第5页
资源描述:

《研究c++课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、研究C++课程设计报告研究C++课程设计报告_导读:仕(士):仕(士)是帅(将)的贴身保镖,它也只能在九宫内走动。它的行棋路径只能是九宫内的斜线。相(象):相(象)的主要作用是防守,保护自己的帅(将)。它的走法是每次循对角线走两格,俗称;象走田;。相(象)的活动范围限于;河界;以内的本方阵地,不能过河,且如果它走的;田;字中央有一个棋子,就不能走,俗称;塞象眼;。车:车在西安科技大学计算机学院软件工程2012级C++课程设计报告一、题目:利用C++实现中国象棋程序问题(或功能)描述:1.走棋和吃子对

2、局时,由执红棋的一方先走,双方轮流各走一着,直至分出胜、负、和,对局即终了。轮到走棋的一方,将某个棋子从一个交叉点走到另一个交叉点,或者吃掉对方的棋子而占领其交叉点,都算走一着。双方各走一着,称为一个回合。2、各种棋子的走法帅(将):帅和将是棋中的首脑,是双方竭力争夺的目标。它只能在;九宫;之内活动,可上可下,可左可右,每次走动只能按竖线或横线走动一格。帅与将不能在同一直线上直接对面,否则走方判负。仕(士):仕(士)是帅(将)的贴身保镖,它也只能在九宫内走动。它的行棋路径只能是九宫内的斜线。相(象)

3、:相(象)的主要作用是防守,保护自己的帅(将)。它的走法是每次循对角线走两格,俗称;象走田;。相(象)的活动范围限于;河界;以内的本方阵地,不能过河,且如果它走的;田;字中央有一个棋子,就不能走,俗称;塞象眼;。车:车在象棋中威力最大,无论横线、竖线均可行走,只要无子阻拦,步数不受限制。因此,一车可以控制十七个点,故有;一车十子寒;之称。炮:炮在不吃子的时候,走动与车完全相同。炮与被吃子之间必须隔一个棋子,进行跳吃,俗称;架炮;或;炮打隔子;。马:马走动的方法是一直一斜,即先横着或直着走一格,然后再

4、斜着走一个对角线,俗称;马走日;。马一次可走的选择点可以达到四周的八个点,故有;八面威风;之说。如果在要去的方向有别的棋子挡住,马就无法走过去,俗称;蹩马腿;。兵(卒):兵(卒)在未过河前,只能向前一步步走,过河以后,除不能后退外,允许左右移动,但也只能一次一步。3、吃子:任何棋子走动时,如果目标位置上有对方的棋子,就可以把对方的棋子拿出棋盘,再换上自己的棋子(即;吃子;)。4问题的描述:根据中国象棋的棋盘与规则,分别输入甲方与乙方的对弈要求(如车9进2,马5退4),实现人人X络方式的对弈(对不合适

5、的操作可以识别)。象棋是一种双方对阵的竞技项目。棋子共有三十二个,分为红黑两组,各有十六个,由对弈的双方各执一组。兵种是一样的,分为七种:红方:红方有帅一个,仕、相、车、马、炮各两个,兵五个。黑方:黑方有将一个,士、象、车、马、炮各两个,卒五个。其中帅与将;仕与士;相与象;兵与卒的作用完全相同,仅仅是为了区别红棋和黑棋而已。棋子活动的场所,叫作;棋盘;。在长方形的平面上,绘有九条平行的竖线和十条平行的横线相交组成,共有九十个交叉点,棋子就摆在交叉点上。中间部分,也就是棋盘的第五,第六两横线之间末画竖

6、线的空白地带称为“河界”。两端的中间,也就是两端第四条到第六条第1页共15678910研究C++课程设计报告_(2)导读:以到达的位置有对方的棋子,就可以把对方棋子拿出棋盘(称为吃子)而换上自己的棋子。只有炮的;吃子;方式与它的走法不同:它和对方棋子之间必须隔一个子(无论是自己的还是对方的),具备此条件才能;吃掉;人家。一定要注意,中隔一个棋子,这个棋子俗称“炮架子”。帅和将被吃或不能动弹即输棋。二、编程要点(或基本思路、页西安科技大学计算机学院软件工程2012级C++课程设计报告竖线之间的正方形部

7、位,以斜交叉线构成“米”字方格的地方,叫作“九宫”(它恰好有九个交叉点)。整个棋盘以“河界”分为相等的两部分。为了比赛记录和学习棋谱方便起见,现行规则规定:按九条竖线从右至左用中文数字一-九来表示红方的每条竖线,用阿拉伯数字1~9来表示黑方的每条竖线。对弈开始之前,红黑双方应该把棋子摆放在规定的位置。任何棋子每走一步,进就写“进”,退就写“退”,如果像车一样横着走,就写“平”。任何棋子在走动时,如果乙方棋子可以到达的位置有对方的棋子,就可以把对方棋子拿出棋盘(称为吃子)而换上自己的棋子。只有炮的;吃

8、子;方式与它的走法不同:它和对方棋子之间必须隔一个子(无论是自己的还是对方的),具备此条件才能;吃掉;人家。一定要注意,中隔一个棋子,这个棋子俗称“炮架子”。帅和将被吃或不能动弹即输棋。二、编程要点(或基本思路、算法分析与说明):首先将棋盘的每一格坐标化,横坐标从01开始到09。纵坐标从01开始到10,初始横坐标01行上摆放红子棋子,01放车、02放马、03放象、04放士、05放帅,06、07、08、09对称放士、象、马、车。横坐标03行02、08列放炮,横坐标04行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。