1 从有序顺序表中删除其值在给定值s到t之间(s<t)的所有元素,若输入元素不合法或为空则返回错误信息并退出运行
代码如下
boot delect(sqlist &L,elemtype s,elemtype t)
{
if(s>t||L.length==0)
return 0;
for(i=0;i<L.length&&L.data[i]>s;i++) //查找大于等于s的元素
if(i==L.length)
return 0;
for(j=i;j<L.length&&L.data[j]>=t;j++) //查找大于t的元素
for( ;j<L.length;j++,i++)//把大于t的元素移动到删除的元素上
L.data[i]=L.data[j];
L.length=i+1;//最后的表长,即最后元素的个数
return 1;
}