八皇后课程设计实验报告 - C++(6)

2019-02-16 17:33

C++课程设计

cout<<\‖ ‖\cout<<\‖ 请选择(1、2,或者0): ‖\

cout<<\‖----------------------------------------‖\ }

int main()//主函数 {

cout<<\‖________________________________________‖\

for(;;) {

menu();

cout<

cout<<\请从~中选择一个数:\ int number; cin>>number; switch(number)

{

case 1: measure1();break;

case 2: measure2();break; case 3: measure3();break; case 0: return 0; default: }

return 0;

22

cout<<\抱歉,没有该选项,请重新作出选择!!\}

C++课程设计

}

5 程序调试分析

1)运行时有些函数的头文件未定义,导致无法进行编译;而且在调试时有些头文件的使用范畴弄混淆了;

2)开始编第一种方法(递归回溯)时,for与if的循环嵌套未能很好掌握,导致几次调试都出现比较严重的错误;且在运用该方法时,未能将八皇后问题的具体思路搞清,没有考虑“如果前次的皇后放置导致后面的放置无论如何都不能满足要求”的问题;

3)在统计方法的个数时,未将累加的那个整型变量进行初始化,导致无法显示,八皇后摆放的是“第X种情况”,也无法统计出八皇后的排列方式是否一定是92种情况。

4)在第三种方法(穷举)编译时,开始我把二维数组定义成整型,但其后在输出棋盘格式时,更本无法调试成功,出现了类型之间的冲突,因为在输出时,我又给那二维数组付成了字符型;

5)未用setw( )函数时,显示的结果相当难看,所定义的标志符都紧靠在一起;多加了一个换行符后,各种情况的间距增大,阅读时舒服多了;

6)如果将92种情形全部打印,则前面的几十种情况将无法显示出,要想看到前面的状态,必须添加一个控制语句,使其能一个一个的输出。

23

C++课程设计

6 运行与测试

开始运行界面,如图6-1所示 输入1时,按enter后如图 6-2所示; 输入2时,按enter后如图6-3所示; 输入3时,按enter后如图6-4所示。 输入0时,按enter后如图6-5所示。

图6-1 八皇后运行界面

(这是把皇后程序进入后的欢迎界面,使用者可以根据需要,选择1,2,3或者0来进行相应的活动)

24

C++课程设计

图 6-2 递归回溯法界面

(这是把皇后第一种方法运行后显示的界面,其中*是棋盘中棋子的位置,@是棋盘中皇后的位置,坐标表示在当前情况下皇后所处位置)

25

C++课程设计

图6-3 非递归界面

(这是把皇后第二种方法运行后显示的界面,其中*是棋盘中棋子的位置,@是棋盘中皇后的位置,坐标表示在当前情况下皇后所处位置)

26


八皇后课程设计实验报告 - C++(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2005年——2011年浙师大《电子商务概论》期末考试题库

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: