有序顺序表删除定区间的元素

大概思路是:用数组A【】表示有序表,i位置是存储符合要求的数,j位置是用于遍历整个数组判断是否符合要求,若符合则把该位置的元素值复制给i++位置。最后返回i+1长度的顺序表,个人想了蛮久,测试的时候代码一直报错,希望哪位小哥哥小姐姐能否告知我是疏忽了什么?感谢

#define Maxsize 100
typedef struct{
   ElemType data[Maxsize];
   int length;
}SqList;
bool Del_3(SqList &L,ElemType s,ElemType t){
      int i=0,j;
    for(j=0;j<L.length;j++){
        if(L.data[j]<s||L.data>t){
            L.data[i++]=L.data[j];
        }
    }
    if(i==0)
        return false;
    else
        L.length=i+1;
    return true;  
}
原文地址:https://www.cnblogs.com/zyqx/p/9757989.html