阅读程序,写出执行结果。
void f33(int a[], int n)
{ int i;
for(i=(n-1)/2; i>=0; i--)
Sift(a, i, n-1);
}
void Sift( inta[], int i, int h)
{ int j, temp *a[i];
j=2*i+1;
while(j<=h)
{ if((j j++;
if( temp=>=a[j])
break;
a[i]=a[j];
i=j;
j=2*i+1;
}
a[i]=temp;
}
int main()
{ int i, a[10]={10,20,5,23,25,62,21,1,32,39};
f33(a,10);
for(i=0; i<10; i++)
printf(“%d,”,a[i]);
printf(“\n”);
return 0;
}
执行结果: