#include<stdio.h>
void Sort(int *header,int length)
{
if(length > 0)
{
int i = 0;
int temp = 0;
for(i = 1; i < length; i++)
{
if(*(header + i) >= *header)
{
temp = *header;
*header = *(header + i);
*(header + i) = temp;
}
}
Sort(header + 1,length - 1);
}
else
{
return;
}
}
int main()
{
int in_str[8] = {12, 13, 7, 9, 11, 37, 45, 34};
int *header = in_str;
int n = 8;
Sort(header,n);
int i = 0;
for(i = 0; i < n; i++)
{
printf(" %d ",*(header + i));
}
}
在这里mark一下,加深自己对递归的进一步理解
输出结果: