#include <stdio.h>
void InsertSort(int *a, int n) {
int i, j;
for(i=2; i<=n; i++) {
if(a[i] < a[i-1]) {
a[0] = a[i];
for(j=i-1; a[j] > a[0]; j--)
a[j+1] = a[j];
a[j+1] = a[0];
}
}
}
int main(void) {
int n, a[1000];
int i;
printf("输入排序数的个数(0退出): ");
while(scanf("%d", &n), n) {
for(i=1; i<=n; i++) {
printf("第%d个数: ", i);
scanf("%d", &a[i]);
}
InsertSort(a, n);
for(i=1; i<=n; i++)
printf("%d ", a[i]);
printf("\n");
}
return 0;
}
排序算法之直接插入排序
最新推荐文章于 2020-03-03 18:27:19 发布