当前位置: 代码迷 >> C语言 >> 怎么表示a,b,c,d,e,f,g互不相同.谢谢哦~~
  详细解决方案

怎么表示a,b,c,d,e,f,g互不相同.谢谢哦~~

热度:370   发布时间:2007-08-24 08:16:41.0

这个问题真是把我难倒了,我改的还是有问题.请帮忙,太在我心中已经郁积了4天.呵呵~~
#include<stdio.h>
//答案7 2 6 3 1 4 5
int cf(int n,int a[80]);
main()
{
int i,j,k,x[10],key;
x[6]=4;
key=1;

for(i=1;i<=7;i++){

for(j=1;j<=7;j++){
x[1]=i;
x[2]=j-3;
x[3]=i-1;
x[4]=15-i-j;
x[5]=13-i-j;
x[7]=j;

if((4-x[2])*(4-x[3])>0){
for(k=1;k<=7;k++){
if(x[k]<=0||x[k]>7)
key=0;
}
}
}

if(cf(7,x[7])){
if(key){
for(i=1;i<=7;i++){
printf("%d ",x[i]);
}
printf("\n");
}
}
}
}

int cf(int n,int a[80]){
int i,j;
for(i=1;i<=n-1;i++)
for(j=i+1;j<=n;j++){
if(a[i]==a[j]){
return 0;
}
else
return 0;
}

}


----------------解决方案--------------------------------------------------------
  相关解决方案