八皇后问题(C语言版)_第1页
八皇后问题(C语言版)_第2页
八皇后问题(C语言版)_第3页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、aiLine=O; /列标记初始化,表示无列冲突include <stdio.h>#i ncIude "windows, h"#i ncIude<con i o. h>#i ncIude <stdI i b. h>#incIude <windows. h>/添加下边这一行#i ncIude<con i o.h>/* con io是Console I nput/Output (控制台输入输出)的简写,*其中定义了通过控制台进行数据输入和数据输出的函数,*主要是一些用户通过按键盘产生的对应操作,比如getch 0函数等

2、等。*/static char Queen8 8;stat i c i nt a 8;static int b15;static int c15;static int iQueenNum=O; /记录总的棋盘状态数void qu(int i) ; / 参数 i 代表行i nt ma i n ()int iLine, iColumn;/棋盘初始化,空格为* ,放置皇后的地方为 for (iLine=0;iLine<8;iLine+)for (iColumn=0;i Co Iumn<8;iColumn+)Queen iLi ne i Co I umn二*;)/主、从对角线标记初始化,表

3、示没有冲突for(iLine二0;iLineO5;iLine+) bi L i ne=ci L i ne=0;qu (0); system ("pause");return 0;void qu(int i)i nt i Co Iumn;for(iColumn=0;i Co Iumn<8;iColumn+)1 if (a i Co I umn =0&&b i - i Co I umn+7 =0&&c i + i Co I umn =0) / 无冲突如果Queen i i Co I umn =' ; / 放皇后 aiColumn=1

4、; / 标记, 下一次该列上不能放皇后bi-iColumn+7=1; /标记,下一次 该主对角线上不能放皇后ci + iColumn=1; /标记,下一次该 从对角线上不能放皇后if(i7)qu(i+1); /如果行还没有遍历完,进入下一行else /否则输出/输出棋盘状态int iLine, i Co Iumn;pr i ntf ("第 %d 种状态为:n", +iQueenNum); for (iLine二0; iLine<8; iLine+)for (i Column=0;i Co Iumn<8;iCoIumn+) pr intf("%c &qu

5、ot;, Queeni L inei Co Iumn); printf(HnH);Jprintf (nnn");if (iQueenNum % 10 = 0)getch ();J)/如果前次的皇后放置导致后面的放置无论如何都不能满足要/求,则回溯,重置Queenii Co Iumn = 'aiColumn=0;b i-i Co Iumn+刀=0;ci+iColumn=0;输出效果:第1种状态为:第2种状态为:第3种状态为:第4种状态为:第5种状态为:第6种状态为:* 厂 * * * * * *亠* * * * * * * * * * * * * * * * * * * *第7种状态为* * * * * * * * * * * * * * J * * * * * * * * *第8种状态为* * * * * * * * * * * * *

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论