资源简介

一、问题描述 设计一个国际象棋的马踏棋盘的演示程序。 基本要求:将马随机放在国际象棋8×8的棋盘Board[8][8]的某个方格中,马按走棋规则进行移动。要求每个方格只进入一次,走遍棋盘全部的64个方格。编制非递归程序,求出马的行走路线,并按求出的行走路线,将数字1,2,3, …,64一次填入一个8×8的方阵输出之。 测试数据:可自行指定一个马的初始位置(i,j),0≤i,j≤7。 二、实验目的: 1、对数据结构基本理论和存储结构及算法设计有更加深入的理解; 2、了解栈的特性,以便在实际问题背景下灵活运用他们; 3、提高在实际设计操作中系统分析、结构确定、算法选择、数学建模和信息加工的能力。

资源截图

代码片段和文件信息

#include
#include“stack.h“
#include 

Point g_round[8] = {000};
void SetRound(Point cur)//查找所在位置的所有可走位置的坐标,将其赋给g_round[8]
{
Point round[] = 
{
cur.x-2cur.y+10cur.x-1cur.y+20
cur.x+1cur.y+20cur.x+2cur.y+10
cur.x+2cur.y-10cur.x+1cur.y-20
cur.x-1cur.y-20cur.x-2cur.y-10
};
for(int i=0;i<8;i++)
{
g_round[i].x = round[i].x;
g_round[i].y = round[i].y;
}
}
bool GetRound(int iPoint &pt)//将所在位置周围所有八个位置坐标赋予指针变量pt,并判断其合理性
{
pt.x = g_round[i-1].x;
pt.y = g_round[i-1].y;
if(pt.x<0 || pt.y<0 || pt.x>7 || pt.y>7)//判断其合理性
return false;
else 
return true;
}

void main()
{
int s=1;
char yn;
cout<<“===============马踏棋盘的程序设计===============“< cout< while(s)
{
int order[8][8] = {0};

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     952109  2009-07-19 12:02  数据结构课程设计报告书.pdf

     文件       3302  2009-07-02 21:07  马踏棋盘源程序\HorseVisit.cpp

     文件       4448  2009-06-30 18:37  马踏棋盘源程序\HorseVisit.dsp

     文件        545  2009-06-30 12:39  马踏棋盘源程序\HorseVisit.dsw

     文件      66560  2009-07-02 22:47  马踏棋盘源程序\HorseVisit.ncb

     文件      48640  2009-07-02 22:47  马踏棋盘源程序\HorseVisit.opt

     文件        254  2009-07-02 22:47  马踏棋盘源程序\HorseVisit.plg

     文件       1319  2009-07-01 22:06  马踏棋盘源程序\Stack.cpp

     文件        559  2009-07-01 01:22  马踏棋盘源程序\Stack.h

     目录          0  2009-07-19 12:07  马踏棋盘源程序

----------- ---------  ---------- -----  ----

              1077736                    10


评论

共有 条评论