1.插入排序
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(int argc, const char *argv[])
{
int n;
printf("请输入数组长度n:");
scanf("%d",&n);
int arr[n];
for(int i=0;i<n;i++)
{
printf("please enter arr[%d]:",i);
scanf("%d",arr+i);
}
//插入排序
int *p=arr;
int j;
for(int i=1;i<n;i++)
{
int t=*(p+i);
for(j=i-1;j>=0;j--)
{
if(t<*(p+j))
{
*(p+j+1)=*(p+j);
}
else
break;
}
*(p+j+1)=t;
}
for(int i=0;i<n;i++)
{
printf("%d\t",*(p+i));
}
puts("");
return 0;
}
结果: