#include<iostream> #include<stdio.h> #include<algorithm> using namespace std; int array[1000]; int insertion_sort(int first,int last)//起始索引为first,终止索引为last..调用完成后,array[]中从first到last处于升序排列 { int i,j; int temp; for(i=first+1;i<=last;i++) { temp=array[i]; j=i-1; while((j>=first) && (array[j]>temp)) { array[j+1]=array[j]; j--; } array[j+1]=temp; } } int main() { int i,j; for(i=1;i<=10;i++) scanf("%d",&array[i]); insertion_sort(1,10); for(i=1;i<=10;i++) printf("%d ",array[i]); return 0; } /* 1 2 0 5 3 7 8 9 4 6 */