#include <iostream.h>
#include<string.h>
#include<iomanip.h>
#include<stdio.h>
#define MAXLEN 100
struct SeqList{
int data[MAXLEN];
int last;
struct SeqList *next;
};
/*初始化*/
void InitSeqList(SeqList *list)
{
list->last=-1;
}
int InsertSeqList(SeqList *list)
{
int j=list->last;int k=0;int a,c,d,e;int b=0,g=0;
for(int i=0;i<=j;i++){
if(list->data[i]%2==0){
k++;
list->data[k+j]= list->data[i];
list->last++;
a=k;
c=list->last;
}
}
for(i=0;i<=c-a;i++){
if(list->data[i]%2!=0){
b++;
list->data[c+b]= list->data[i];
list->last++;
d=b;
e=list->last;
}
}
for(i=0;i<=j;i++){
list->data[j-i]= list->data[2*j+1-i];
list->last--;
}
return 1;
}
/*顺序输出表*/
void Display(SeqList *list)
{
for(int i=0;i<=list->last;i++)
cout<<list->data[i]<<" ";
cout<<endl;
}
void main()
{
//int a,b,c,d;
SeqList list;
InitSeqList(&list);//空表
list.data[0]=8;
list.data[1]=13;
list.data[2]=24;
list.data[3]=6;
list.data[4]=5;
list.data[5]=8;
list.data[6]=9;
list.data[7]=7;
list.data[8]=22;
list.data[9]=3;
list.data[10]=15;
list.last=10;
Display(&list);
InsertSeqList(&list);
Display(&list);
}
结果