您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页八皇后问题递归C语言

八皇后问题递归C语言

来源:五一七教育网
#include #include

const int NUM=8;//八皇后问题(NUM=8) static int count=0;

void output(int array[][NUM]);//八皇后分布输出

int judge(int array[][NUM],int row,int column);//判定函数 void search(int array[][NUM],int row);//搜索函数

int main() {

int i,j;

int box[NUM][NUM]; for(i=0;ifor(j=0;j//output(box); search(box,0);

printf(\"八皇后分布共有 %d 种。\\n\ return 0; }

void output(int array[][NUM]) {

int i,j;

for(i=0;ifor(j=0;jprintf(\"%d \ }

printf(\"\\n\"); } }

int judge(int array[][NUM],int row,int column) {

int i,j;

for(i=0;ifor(j=0;jif(array[i][j]==1) {

if(j==column) return 0;//判断是否在同一列

if(abs(row-i)==abs(column-j)) return 0;//判断是否在同一斜线上 } } }

return 1; }

void search(int array[][NUM],int row) {

int j;

//for(i=0;ifor(j=0;jif(!judge(array,row,j)) {

//printf(\"%d \ continue; }

array[row][j]=1; if(row==NUM-1) {

//array[row][j]=1; count++;

printf(\"八皇后分布图: %d\\n\ output(array); array[row][j]=0; continue; } else

search(array,row+1); array[row][j]=0; } //} return; }

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务