#include <iostream>
using namespace std;
#define MaxSize 100
typedef char ElemType;
typedef int Keytype;
typedef struct{
Keytype key;
ElemType data;
}SqType;
//直接插入排序
void insert(SqType R[], int n)
{
int i, j;
SqType tmp;
for(i=1;i<n;i++){
if(R[i-1].key > R[i].key){
tmp=R[i];
j=i-1;
do{
R[j+1] = R[j];
j--;
}
while(j>=0 && R[j].key>tmp.key);
R[j+1]=tmp;
}
}
}
int main()
{
SqType R[MaxSize];
Keytype A[100] = {1, 4, 7, 9, 10, 3, 5, 2};
int i, n=8;
for(i=0;i<n;i++){
R[i].key=A[i];
}
insert(R, n);
cout<<"排序结果:"<<endl;
for(i=0;i<n;i++){
cout<<R[i].key<<" ";
}
cout<<endl;
}