1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <stdbool.h>
4 #define MaxSize 100
5 typedef struct{
6 int data[MaxSize];
7 int length;
8 }Sqlist;
9 //初始化
10 bool InitList(Sqlist *L){
11 L->length=0;
12 return true;
13 }
14 //插入
15 bool ListInsert(Sqlist *L,int i,int element){
16 int j;
17 if(i<1 || i>L->length+1)
18 return false;
19 if(L->length>=MaxSize)
20 return false;
21 for(j=L->length;j>=i;j--){
22 L->data[j]=L->data[j-1];
23 }
24 L->data[i-1]=element;
25 L->length++;
26 return true;
27 }
28 //删除
29 bool DelList(Sqlist *L,int i,int *element){
30 int j;
31 if(i<1 || i>L->length)
32 return false;
33 element=L->data[i-1];
34 for(j=i;j<=L->length;j++){
35 L->data[j-1]=L->data[j];
36 }
37 L->length--;
38 return true;
39 }
40 //查找
41 int LocateElem(Sqlist L,int e){
42 int i;
43 for(i=0;i<L.length;i++){
44 if(L.data[i]==e)
45 return i+1;
46 }
47 return 0;
48 }
49 //遍历
50 int travel(Sqlist L){
51 int i;
52 for(i=0;i<L.length;i++){
53 printf("%d",L.data[i]);
54 }
55 return 0;
56 }
57 int main(){
58 int *e;
59 Sqlist L;
60 InitList(&L);
61 ListInsert(&L,1,1);
62 ListInsert(&L,2,1);
63 ListInsert(&L,3,1);
64 DelList(&L,1,&e);
65 travel(L);
66 return 0;
67 }