淮 阴 工 学 院 数据结构课程设计报告 设计题目: 八 皇 后 系(院): 计 算 机 工 程 系 专 业: 信 息 安 全 班 级: 信 息 1 0 6 学生姓名: 叶 青 学 号: 1061303127 指导教师: 张亚红 寇海洲 胡荣林 夏森 学年学期: 2007 ~ 2008 学年 第 2 学期 2008 年 6 月 25 日 设计任务书 课题 名称 八 皇 后 设计 目的 1. 用c++语言平台将一个8*8的棋盘上放上8个皇后,使得每一个皇后既攻击不到另外七个皇后,也不被另外七个皇后所攻击的92 种结构予以实现. 2. 通过这次课程设计,提高自己的编程能力,熟悉c++的编程坏境,为以后的程序开发打下基础. 实验 环境 1) 系统要求:win98 以上操作系统; 2) 语言平台:tc++或vc++6.0; 3) 执行文件:八皇后.exe 任务 要求 试编写程序实现将八个皇后放置在国际象棋棋盘的无冲突的位置上的算法,并给出所有的解。 工作进度计划 序号 起止日期 工 作 内 容 1 2008.6.23~2008.6.24 查阅相关内容 2 2008.6.24~2008.6.25 编写代码及实习报告 3 2008.6.25~2008.6.26 完善课程设计报告 4 2008.6.26~2008.6.27 答辩 指导教师(签章): 2 0 0 8 年 6 月 3 0 日 摘要: 八皇后问题要求在一个8*8的棋盘上放上8个皇后,使得每一个皇后既攻击不到另外七个皇后,也不被另外七个皇后所攻击.按照国际象棋的规则,一个皇后可以攻击与之处在同一行或同一列或同一斜线上的其他任何棋子.因此,八皇后问题等于要求八个皇后中的任意两个不能被放在同一行或同一列或同一斜线上。 而本课程设计本人的目的也是通过用 c ++语言平台将一个8*8的棋盘上放上8个皇后,使得每一个皇后既攻击不到另外七个皇后,也不被另外七个皇后所攻击的92 种结构予以实现. 使用递归方法最终将其问题变得一目了然,更加易懂。 关键词: 八皇后 ; c ++ ; 递归法 目 录 1 . 课题综述 ............................................................................................................................. 1 1 . 1 课题的来源及意义 ............................................................................................................................ 1 1 . 2 面对的问题 ..........................................................................................