用C/C++编写一个小程序
#include
using namespace std;
int main()
{
int b[6]={1,2,2,3,4,5},i,j,k,l,m,n,p,c,d,*a[6];
for(j=0;j<6;j++)
a[j]=&b[j];
for(j=0;j<6;j++)
{
a[0]=&b[j];
for(k=0;k<6;k++)
{
if(k==j)
continue;
a[1]=&b[k];
for(l=0;l<6;l++)
{
if(l==j||l==k)
continue;
a[2]=&b[l];
for(m=0;m<6;m++)
{
if(m==j||m==k||m==l)
continue;
a[3]=&b[m];
for(n=0;n<6;n++)
{
if(n==j||n==k||n==l||n==m)
continue;
a[4]=&b[n];
for(p=0;p<6;p++)
{
if(p==j||p==k||p==l||p==m||p==n)
continue;
a[5]=&b[p];
if(*a[2]==4)
continue;
else
{
for(i=0;i<6;i++)
{
if(*a[i]==3)
c=i;
if(*a[i]==5)
d=i;
}
}
if(abs(c-d)==1)
continue;
else
{
for(i=0;i<6;i++)
cout<
cout<
}
}
}
}
}
}
}
return 0;
}
以上这个程序可以实现你的要求,问题在于一个命令行窗口不能全部显示出来……你可以对程序略加修改,通过两次运行得到全部结果。或者将结果输入文件中也可。至于变量过多的问题,可以用数组都代替,你 自己尝试一下吧!
收起
阅读全文