#include<stdio.h>#define N 7int main(){int i;int index1,index2;int x[N];printf("请输入7个数字:");for(i=0;i<N;i++)scanf("%d",&x[i]);for(i=1;i<N;i++){index1=i-1;//因为开始是先拿两个最前面的值进行,比较,所以第一个值就应该是x[1-1]来与x[1]比较,以此类推index2=x[i];//取出这个数赋值给index2while(index1>=0 && x[index1]>index2)//进入循环,与index2之前有序的数列进行比较,到index2时,它前面的数一定都是有序的{x[index1+1]=x[index1];index1--;//每遍历完依次循环就往前面移一位}x[index1+1]=index2;//将取出来的这个数,赋值给对应的位置}printf("按从小到大排列为:\n");for(i=0;i<N;i++)printf("%d\t",x[i]);printf("\n");return 0;}
如果觉得《十大算法 — 插入排序法【C语言代码诠释】》对你有帮助,请点赞、收藏,并留下你的观点哦!