1  1 #include<stdio.h>
  2  2 #define Maxsize 100
  3  3 typedef struct        // 定义一个顺序表的结构
  4  4 {
  5  5     int data[Maxsize];
  6  6     int length;
  7  7 }Sqlist;
  8  8 
  9  9 
 10 10 int Initlist(Sqlist &L)//初始化顺序表
 11 11 {
 12 12     L.length=0;
 13 13     return 1;
 14 14 }
 15 15 
 16 16 
 17 17 
 18 18 int Getelem(Sqlist L,int p,int &e) //取得下标为p的元素并保存到e中
 19 19 {
 20 20     if(p<0||p>L.length-1)
 21 21         return 0;
 22 22     e=L.data[p];
 23 23     return 1;
 24 24 }
 25 25 
 26 26 
 27 27 
 28 28 
 29 29 int Locatelem(Sqlist L,int e) //  找到第一个与e值相同的元素下标并返回这个值
 30 30 {
 31 31     int i;
 32 32     for(i=0;i<=L.length-1;i++)
 33 33         if(L.data[i]==e)
 34 34             return i;
 35 35         return -1;
 36 36 }
 37 37 
 38 38 int Insertlist(Sqlist &L,int p,int e) //在下标为p处插入一个大小为e的元素
 39 39 {
 40 40     int i;
 41 41     if(p<0||p>L.length||L.length>=Maxsize)
 42 42         return 0;
 43 43     for(i=L.data[L.length-1];i>=p;i--)
 44 44         L.data[i+1]=L.data[i];
 45 45     L.data[p]=e;
 46 46     L.length++;
 47 47     return 1;
 48 48 }
 49 49 
 50 50 
 51 51 int Deletelist(Sqlist &L,int p,int&e)//删除下标为p处的元素
 52 52 {
 53 53     int i;
 54 54     if(p<0||p>L.length-1)
 55 55         return 0;
 56 56     e=L.data[p];
 57 57     for(i=p;i<L.length-1;i++)
 58 58         L.data[i]=L.data[i+1];
 59 59     L.length --;
 60 60     return 1;
 61 61 }
 62  
 63 
 64 ---恢复内容结束---
 65 
 66  1 #include<stdio.h>
 67  2 #define Maxsize 100
 68  3 typedef struct        // 定义一个顺序表的结构
 69  4 {
 70  5     int data[Maxsize];
 71  6     int length;
 72  7 }Sqlist;
 73  8 
 74  9 
 75 10 int Initlist(Sqlist &L)//初始化顺序表
 76 11 {
 77 12     L.length=0;
 78 13     return 1;
 79 14 }
 80 15 
 81 16 
 82 17 
 83 18 int Getelem(Sqlist L,int p,int &e) //取得下标为p的元素并保存到e中
 84 19 {
 85 20     if(p<0||p>L.length-1)
 86 21         return 0;
 87 22     e=L.data[p];
 88 23     return 1;
 89 24 }
 90 25 
 91 26 
 92 27 
 93 28 
 94 29 int Locatelem(Sqlist L,int e) //  找到第一个与e值相同的元素下标并返回这个值
 95 30 {
 96 31     int i;
 97 32     for(i=0;i<=L.length-1;i++)
 98 33         if(L.data[i]==e)
 99 34             return i;
100 35         return -1;
101 36 }
102 37 
103 38 int Insertlist(Sqlist &L,int p,int e) //在下标为p处插入一个大小为e的元素
104 39 {
105 40     int i;
106 41     if(p<0||p>L.length||L.length>=Maxsize)
107 42         return 0;
108 43     for(i=L.data[L.length-1];i>=p;i--)
109 44         L.data[i+1]=L.data[i];
110 45     L.data[p]=e;
111 46     L.length++;
112 47     return 1;
113 48 }
114 49 
115 50 
116 51 int Deletelist(Sqlist &L,int p,int&e)//删除下标为p处的元素
117 52 {
118 53     int i;
119 54     if(p<0||p>L.length-1)
120 55         return 0;
121 56     e=L.data[p];
122 57     for(i=p;i<L.length-1;i++)
123 58         L.data[i]=L.data[i+1];
124 59     L.length --;
125 60     return 1;
126 61 }