int func(int a[],int n)
{
int sum=0;
for(int i=0;i<7;i++)
int m+=(a[i]+a[i+1]+a[i+2]-15)*(a[i]+a[i+1]+a[i+2]-15); //计算每行的和与15的误差
for(i=0;i<3;i++)
int n+=(a[i]+a[i+3]+a[i+6]-15)*(a[i]+a[i+3]+a[i+6]-15); //计算每列的和与15的误差
sum+=m+n+(a[0]+a[4]+a[8])*(a[0]+a[4]+a[8])+(a[2]+a[4]+a[6])*(a[2]+a[4]+a[6]);
return sum;
}
void main()
{
for(int i=0;i<9;i++)
a[i]=i++; //付初值
int e=func(a,9); //给e赋初值
srand(time(NULL));
while(e)
{
i=rand()%9;
int j=rand()%9;
temp=a[i];
a[i]=a[j];
a[j]=temp;