数据结构实验报告马踏棋盘.docxVIP

  • 48
  • 0
  • 约4.91千字
  • 约 15页
  • 2020-03-26 发布于江西
  • 举报
目 录 1 课程设计的目的………………………………………………………………x 2 需求分析………………………………………………………………………x 课程设计报告内容……………………………………………………………x 1、概要设计……………………………………………………………………x 2、详细设计……………………………………………………………………x 3、调试分析……………………………………………………………………x 4、用户手册……………………………………………………………………x 5、测试结果……………………………………………………………………x 6、程序清单……………………………………………………………………x 小结 …………………………………………………………………………x 5 参考文献 ………………………………………………………………x 2011 年 5 月 23 日 1、 课程设计的目的 熟练使用栈和队列解决实际问题; 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力; (3) 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; (4) 提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 2、 需求分析 *问题描述:将马随机放在国际象棋的 8X8 棋盘 Bo 阿 rd[0..7,0..7]的某个方格中,马按 走棋规则进行移动。要求每个方格上只进入一次,走遍棋盘上全部 64 个方格。编制非递归 程序,求出马的行走路线 ,并按求出的行走路线,将数字 1,2,…,64 依次填入 8X8 的 方阵输出之。 *测试数据:由读者指定,可自行指定一个马的初始位置。 *实现提示:每次在多个可走位置中选择一个进行试探,其余未曾试探过的可走位置必须用 适当结构妥善管理,以备试探失败时的“回溯”(悔棋)使用。并探讨每次选择位置的“最 佳策略”,以减少回溯的次数。 3、课程设计报告内容 根据分析先建了 2 个结构体 struct PosType //马的坐标位置类型 { int m_row; //行值 int m_col; //列值 }; struct DataType //栈的元素类型 { PosType seat; //马在棋盘中的“坐标位置” int di; //换方向的次数 }; chess::chess() bool chess::chessPath(PosType start) //在棋盘中进行试探寻找下一步位置并同时记录位置, 以及涉及到的入栈出栈 void chess::Print() //打印马走的路径 PosType chess::NextPos(PosType a,int di)//根据当前点的位置 a 和移动方向 di,试探下一位 置 4、总结 一、这次课程设计的心得体会通过实践我的收获如下: 巩固和加深了对数据结构的理解,提高综合运用本课程所学知识的能力。 培养了我选用参考书,查阅手册及文献资料的能力。培养独立思考,深入研究,分析问 题、解决问题的能力。 二、根据我在实习中遇到得问题,我将在以后的学习过程中注意以下几点: 认真上好专业实验课,多在实践中锻炼自己。 写程序的过程中尽量在正确的基础上追求简洁。 在做设计的时候要有信心,有耐心,切勿浮躁。 认真的学习课本知识,掌握课本中的知识点,并在此基础上学会灵活运用,不过也不能 完全依赖课本。 在课余时间里多写程序,熟练掌握在调试程序的过程中所遇到的常见错误,以便能节省 调试程序的时间。 参考文献 (1)万健主编,数据结构实用教程(C++版),电子工业出版社,2011 (2)网上搜索相关程序作为参考 7、程序运行结果: 附件: #include iostream using namespace std; #include SqStack.h struct PosType //马的坐标位置类型 { int m_row; //行值 int m_col; //列值 }; struct DataType //栈的元素类型 { PosType seat; //马在棋盘中的“坐标位置” int di; //换方向的次数 }; class chess { public: chess(); bool chessPath(PosType); void Print(); private: PosType NextPos(PosType c , int d ); int m_chess[8][8]; // 棋盘数组 }; chess::chess() { int i,j; for(i=0;i=7;i++) for(j=0;j=7;j++) m_chess[i][j]=0; } bool chess::chessPath(PosType

文档评论(0)

1亿VIP精品文档

相关文档