#include <iostream>
using namespace std;
#define MaxSize 10
typedef struct
{
int r[MaxSize+1];
int length;
}SqList;
void InsertSort(SqList *L) //直接插入排序,此时传入的SqList参数的值为lengt=6,r[6]={0,5,3,4,6,2},
//其中r[0]=0将用于后面起到哨兵的作用。
{
int len=L->length;
int i,j;
for(i=2;i<=len;i++)
{
L->r[0]=L->r[i];
if(L->r[i]<L->r[i-1])
{
L->r[0]=L->r[i];
for(j=i-1;L->r[j]>L->r[0];j--)
{
L->r[j+1]=L->r[j];
}
L->r[j+1]=L->r[0];
}
}
}
void main()
{
SqList L;
SqList *p=&L; //定义P为指向SqList数据类型的指针变量,并指向L
cin>>L.length;
for(int i=1;i<=L.length;i++)
{
cin>>L.r[i];
}
InsertSort(p); //或BubbleSort(&L)
for(int j=1;j<=L.length;j++)
{
cout<<L.r[j]<<" ";
}
}
using namespace std;
#define MaxSize 10
typedef struct
{
int r[MaxSize+1];
int length;
}SqList;
void InsertSort(SqList *L) //直接插入排序,此时传入的SqList参数的值为lengt=6,r[6]={0,5,3,4,6,2},
//其中r[0]=0将用于后面起到哨兵的作用。
{
int len=L->length;
int i,j;
for(i=2;i<=len;i++)
{
L->r[0]=L->r[i];
if(L->r[i]<L->r[i-1])
{
L->r[0]=L->r[i];
for(j=i-1;L->r[j]>L->r[0];j--)
{
L->r[j+1]=L->r[j];
}
L->r[j+1]=L->r[0];
}
}
}
void main()
{
SqList L;
SqList *p=&L; //定义P为指向SqList数据类型的指针变量,并指向L
cin>>L.length;
for(int i=1;i<=L.length;i++)
{
cin>>L.r[i];
}
InsertSort(p); //或BubbleSort(&L)
for(int j=1;j<=L.length;j++)
{
cout<<L.r[j]<<" ";
}
}