#include<stdio.h>
#include<stdlib.h>
void insertSort(int arr[],int l)//从小到大排序
{
for(int i=1;i<l;i++)
{
if(arr[i]<arr[i-1])
{
int temp=arr[i];
int j=i-1;
for(;j>=0&&arr[j]>temp;j--)
{
arr[j+1]=arr[j];
}
arr[j+1]=temp;
}
}
}
void insertSort2(int arr[],int l)//从大到小排序
{
for(int i=1;i<l;i++)
{
if(arr[i]>arr[i-1])
{
int temp=arr[i];
int j=i-1;
for(;j>=0&&arr[j]<temp;j--)
{
arr[j+1]=arr[j];
}
arr[j+1]=temp;
}
}
}
void printarry(int arr[],int l)
{
for(int i=0;i<l;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
}
int main()
{ int arr[]={7,4,8,6,9,0,3,123,345,657,87669,241,4231,2142,54,45};
int l=sizeof(arr)/sizeof(int);
insertSort(arr,l);
printf("升序排列如下:\n");
printarry(arr,l);
insertSort2(arr,l);
printf("降序排列如下:\n");
printarry(arr,l);
return 0;
}
2,运行结果