#include
int main()
{
void Create_Array(int *arr);
int Get_Largest(int *arr,int n);
void Reverse(int *arr,int m);
void Sort(int *arr,int n);
int i,a[10];
Create_Array(a);
Sort(a,10);
for(i=0;i<10;++i)
printf("a[%d]=%d ",i,a[i]);
printf("\n");
return 0;
}
void Create_Array(int *arr)
{
int i;
printf("input ten numbers:\n");
for(i=0;i<10;++i)
scanf("%d",&arr[i]);
}
int Get_Largest(int *arr,int n)
{
int largest=arr[0],idx=0,i;
for(i=1;i if(arr[i]>largest)
idx=i;
return idx;
}
void Reverse(int *arr,int m)
{
int i;
for(i=0;i<=m/2-1;++i)
{
int tmp=arr[i];
arr[i]=arr[m-1-i];
arr[m-1-i]=tmp;
}
}
void Sort(int *arr,int n)
{
int i,index;
for(i=n;i>1;--i)
{
index=Get_Largest(arr,i);
Reverse(arr,index+1);
Reverse(arr,i);
}
}
我在code blocks上运行没有问题