10.14总结
void ListInput(SqList &L){
ElemType x;
L.length=0;
while(cin>>x&&x!=-1){
if(L.length>=MAXSIZE){
cout<<"顺序表已满,无法继续输入!"<<endl;
break;
}
L.elem[L.length++]=x;
}
}
//输出顺序表元素
void ListOutput(SqList L){
for(int i=0;i<L.length;i++){
cout<<L.elem[i]<<"";
}
cout<<endl;
}
//取值操作:活去第i个位置的元素
int GetElem(SqList L,int i,ElemType &e){
if(i<1||i>L.length){
return 0;
}
e=L.elem[i-1];
return 1;
}
//查找操作:查找值为e的元素,返回其位置
int LocateElem_Sq(SqList L,ElemType e){
for(int i=0;i<L.length;i++){
if(L.elem[i]==e){
return i+1;
}
}
return 0;
}
//插入操作:在第a个位置插入元素e
bool ListInsert_Sq(SqList &L,int a,ElemType e){
if(a<1||a>L.length+1){
return false;
}
if(L.length>=MAXSIZE){
return false;
}
//将a的位置及以后的元素后移
for(int i=L.length;i>=a;i--){
L.elem[i]=L.elem[i-1];
}
L.elem[a-1]=e;
L.length++;
return true;
}
//删除操作:删除第C个位置的元素
bool ListDelete_Sq(SqList &L,int c){
if(c<1||c>L.length){
return false;
}
//将C元素之后的元素前移
for(int i=0;i<L.length;i++){
L.elem[i-1]=L.elem[i];
}
L.length--;
return true;
}