#include<stdio.h>
#include<conio.h>
void f1(int *p)
{
*(p+8)=10-*p;
*(p+6)=10-*(p+2);
*(p+1)=15-*p-*(p+2);
*(p+3)=15-*p-*(p+6);
*(p+5)=15-*(p+2)-*(p+8);
*(p+7)=15-*(p+6)-*(p+8);
}
int f2(int x,int y,int z,int n)
{int i,f=1,b[4];
b[0]=x,b[1]=y,b[2]=z,b[3]=n;
for(i=0;i<4;i++)
{if(b[i]<1||b[i]>9)
{f=0;break;}
}
return f;
}
int f3(int *q)
{int *m,*n,k=1;
for(m=q;m<=q+8;m+=2)
{ for(n=q+1;n<=q+7;n+=2)
if(*n==*m)
{k=0;
break;
}
}
return k;
}
main( )
{int a[4]={1,2,3,4},b[4]={6,7,8,9},c[9]={0},i,j;
clrscr();
c[4]=5;
for(i=0;i<4;i++)
{c[0]=a[i];
for(j=0;j<4;j++)
{c[2]=b[j];
f1(c);
if(c[1]+c[7]==10&&c[3]+c[5]==10)
if( f2(c[1],c[3],c[5],c[7]))
if(f3(c))
{printf("%4d%4d%4d\n",c[0],c[1],c[2]);
printf("%4d%4d%4d\n",c[3],c[4],c[5]);
printf("%4d%4d%4d\n",c[6],c[7],c[8]);
printf("\n");
}
}
}
}
我是在网上的搜的,希望对你有帮助!
参考资料:http://zhidao.baidu.com/question/154287850.html
本回答被提问者采纳