1 #include"stdio.h" 2 #define MAX 100 3 typedef struct List{ 4 int length; 5 int num[MAX]; 6 }List_sequence; 7 8 //buid new List_sequence 9 int List_build(List_sequence *L,int num) 10 { 11 int i=0; 12 i=num; 13 L->length=0; 14 for(;num>=0;num--) 15 { 16 L->num[num]=num; 17 ++L->length; 18 printf("num=%d\n",num); 19 } 20 return 0; 21 } 22 //insert data at somewhere 23 int List_insert(List_sequence *L,int num_,int data) 24 { 25 int j=0; 26 int i=num_; 27 28 if(num_<0||num_>=L->length) 29 { 30 printf("error \n"); 31 } 32 for(j=L->length;j>=num_;j--) 33 { 34 L->num[j+1]=L->num[j]; 35 } 36 L->num[num_]=data; 37 ++L->length; 38 printf("position:%d\n data:%d\n length:%d \n",num_,L->num[num_],L->length); 39 return 0; 40 41 } 42 //delete data at somewhere 43 int List_delete(List_sequence *L,int num) 44 { 45 if(num<0||num>L->length) 46 { 47 printf("num error\n"); 48 } 49 int i=0; 50 i=num-1; 51 for(;i<L->length;i++) 52 { 53 L->num[i]=L->num[i+1]; 54 } 55 --L->length; 56 return 0; 57 } 58 int List_ergodic(List_sequence *L) 59 { 60 int i=0; 61 for(i=0;i<L->length;i++) 62 { 63 printf("position:%d\n data:%d\n",i,L->num[i]); 64 } 65 return 0; 66 } 67 int main(int argc,char **argv) 68 { 69 List_sequence *L; 70 L=(List_sequence *)malloc(sizeof(List_sequence)); 71 List_build(L,70); 72 List_insert(L,46,234); 73 List_ergodic(L); 74 List_delete(L,50); 75 List_ergodic(L); 76 return 0; 77 }