搜索
查看: 1052|回复: 7
打印 上一主题 下一主题

c语言,八皇后问题,求助啊,不知道哪里错了。。

[复制链接]
跳转到指定楼层
楼主
发表于 2013-11-24 15:48:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
int queen[8][8],lie[8],zhu[15],fu[15],num=1;
int qu(int line);
int main()
{int i,j;
for(j=0;j<8;j++)
{lie[j]=0;
  for(i=0;i<8;i++)
   queen[j][i]=0;
}
for(i=0;i<15;i++)
zhu[i]=fu[i]=0;
qu(0);

        system("pause");
        return 0;
}

int qu(int line)
{int column;
for(column=0;column<8;column++)
{
if(lie[column]==0&&zhu[column]==0&&fu[column]==0)
  {
  queen[line][column]=1;
  lie[column]=1;
  zhu[line-column+7]=1;
  fu[line+column]=1;
  if(line<7)
   qu(line+1);
  else
   {int i,j;
   for(j=0;j<8;j++)
    {
    for(i=0;i<8;i++)
     printf("%d ",queen[j][i]);
    printf("\n");
    }
    num++;printf("\n");
    if(num>9) getch();
   }
  queen[line][column]=0;
  lie[column]=0;
  zhu[line-column+7]=0;
  fu[line+column]=0;
  }
}
}#include <stdio.h>
int queen[8][8],lie[8],zhu[15],fu[15],num=1;
int qu(int line);
int main()
{int i,j;
for(j=0;j<8;j++)
{lie[j]=0;
  for(i=0;i<8;i++)
   queen[j][i]=0;
}
for(i=0;i<15;i++)
zhu[i]=fu[i]=0;
qu(0);

        system("pause");
        return 0;
}

int qu(int line)
{int column;
for(column=0;column<8;column++)
{
if(lie[column]==0&&zhu[column]==0&&fu[column]==0)
  {
  queen[line][column]=1;
  lie[column]=1;
  zhu[line-column+7]=1;
  fu[line+column]=1;
  if(line<7)
   qu(line+1);
  else
   {int i,j;
   for(j=0;j<8;j++)
    {
    for(i=0;i<8;i++)
     printf("%d ",queen[j][i]);
    printf("\n");
    }
    num++;printf("\n");
    if(num>9) getch();
   }
  queen[line][column]=0;
  lie[column]=0;
  zhu[line-column+7]=0;
  fu[line+column]=0;
  }
}
}

沙发
 楼主| 发表于 2013-11-24 15:49:36 | 只看该作者
额,代码复制了两边,复制重了。。
求帮助。。看了一下午了
板凳
发表于 2013-11-24 16:47:46 | 只看该作者
完全没错误,可以运行,前提是删了一遍之后
地板
 楼主| 发表于 2013-11-24 19:31:49 | 只看该作者
4399APPLE 发表于 2013-11-24 16:47
完全没错误,可以运行,前提是删了一遍之后

我自己找出来了。。
if(lie[column]==0&&zhu[column]==0&&fu[column]==0)
这一句错了
应该是
if(lie[column]==0&&zhu[line-column+7]==0&&fu[line+column]==0)
5#
发表于 2013-11-24 21:49:43 | 只看该作者
LZ比我快一步,我今天刚刚想到了八皇后的解法,还没来得及实现
6#
发表于 2013-11-30 16:41:32 | 只看该作者
加点备注嘛 看的我头晕晕的
7#
发表于 2013-12-1 17:53:29 | 只看该作者
TTTTT 发表于 2013-11-30 16:41
加点备注嘛 看的我头晕晕的

                                      
8#
发表于 2013-12-1 20:14:21 | 只看该作者
TTTTT 发表于 2013-11-30 16:41
加点备注嘛 看的我头晕晕的

额,备注正常人好像都不怎么写(程序员不算正常人)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表