#include <stdio.h>
void instert(int arr[],int k){
int i=k; //k表示第n个数字 插入到前面去
int key = arr[k]; //我们需要变换的值
while(arr[i-1]>key){
arr[i] = arr[i-1];
i--;
if(i==0){
break; //超出界限 就停止循环
}
}
arr[i] =key;
}
//插入进行排序
void instertsort(int arr[],int n){
int i;
for(i=1;i<n;i++){ //我们需要将排好的位置开始插入 我们第一个数字一定是排好的 所以进行插入操作
instert(arr,i);
}
}
int main()
{
int i;
int arr[] = {3,1,4,6,8,9,7};
instertsort(arr,7);
for(i= 0;i<7;i++){
printf("%d\n",arr[i]);
}
return 0;
}
网友评论