#include<ctype.h>
#include<stdio.h>
//插入元素
void insert(int a[],int n)
{
int i;
printf("Pelase into a number:\n");
for(i=0;i<n;i++)
{
scanf("%d",a+i);
}
}
//排序
void sort(int array[],int n)
{
int i,j;
int temp;
for(i=1;i<n;i++)
{
temp=array[i];
for(j=i;j>0&&temp<array[j-1];j--)
{
array[j]=array[j-1];
}
array[j]=temp;
}
}
//输出元素
void prt(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%3d",a[i]);
}
putchar('\n');
}
int main()
{
int a[9];
insert(a,9);
sort(a,9);
prt(a,9);
return 0;
}
------------------------------------
# include<stdio.h>
int lt(int m,int n)
{
if(m>n)
{
return -1;
}
else
{
return 1;
}
}
void insert(int p[],int elem)
{
int i,j;
for(i=2;i<elem;i++)
{
if(lt(p[i],p[i-1]))
{
p[0]=p[i];
for(j=i-1;p[0]<p[j];j--)
{
p[j+1]=p[j];
}
p[j+1]=p[0];
}
}
}
int main()
{
int a[10]={100,8,4,5,9,7,6,1,2,3};//100是哨兵元素不用输出
int i;
//直接插入排序;
insert(a,10);
printf("排序:\n");
for(i=1;i<10;i++)
{
printf("%3d",a[i]);
}
return 0;
}