編程環境:windows 7,code bloaks
#include<stdio.h>
void insertion_sort(int *a,int length)//插入排序
{
int i,j;
int key;//待排序的數
for(i=1;i<length;i++)//依次選定一個數
{
key=a[i];
j=i-1;
while(j>=0&&a[j]>key)//對key進行插入排序
{
a[j+1]=a[j];
j--;
}
a[j+1]=key;
}
}
int main()
{
int i;
int a[10]={10,5,9,8,7,1,9,4,12,24};
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\nresult:\n");
insertion_sort(a,10);
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
}