你的循环是到N的,导致你已经转过去了然后又转回来了
程序代码修改如下:
#include
#define N 5
int main()
{
int a[N]={9,6,5,4,1},i,temp;
printf("\n original array:\n");
for(i=0;i
for(i=0;i<(N/2);i++)
{
temp=a[i];
a[i]=a[N-i-1];
a[N-i-1]=temp;
}
printf("\n sorted array:\n");
for(i=0;i
}
for(i=0;i
a[N-i-1]=temp;
}
改成:
for(i=0;i
a[N-i-1]=temp;
}
逆转的时候应该循环总长的一半,
不然转了二次,相当于没有转嘛
最后那一个循环语句
for(i=0;i
for(i=0;i
你转了两次,转到中间就可以停了