#include<stdio.h>
#define N 10
int main() {
int i,j=N-1,x,a[N]={12,3,11,14,21,8,25,18,7,2};
printf("Change before:\n");
for(i=0;i<N;i++)
printf("%3d",a[i]);
i=0;x=a[0];
while(i<j){
while((i<j)&&(x<=a[j]))j--;
a[i]=a[j];
while((i<j)&&(x>a[i]))i++;
a[j]=a[i];
}
a[i]=x;
printf("\nChange after:\n");
for(i=0;i<N;i++)
printf("%3d",a[i]);
return 0;
}
i和j 在循环外面定义了