#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
/*
* 从有序表中删除其值在给定值s与t之间的所有元素,若s或t不合理或顺序表为空,则输出错误
*/
#define MAX 5
typedef struct {
int data[MAX];
int length;
}SqList;
//初始化顺序表
void InitList(SqList& L)
{
for (int i = 0; i < MAX; i++)
{
L.data[i] = 0;
}
L.length = 0;
}
//给顺序表中赋值
void PutNum(SqList& L)
{
for (int i = 0; i < MAX; i++)
{
scanf("%d", &L.data[i]);
L.length++;
}
}
//打印顺序表
void PrintList(SqList L)
{
for (int i = 0; i < L.length; i++)
{
printf("%2d", L.data[i]);
}
}
//删除s到t的元素
bool DelList(SqList& L, int s, int t)
{
if (s >= t || L.length == 0)
return false;
int k = 0;
for (int i = 0; i < L.length; i++)
{
if (L.data[i] >= s && L.data[i] <= 4)
{
continue;
}
else
{
L.data[k] = L.data[i];
k++;
}
}
L.length = k;
return true;
}
int main()
{
SqList L;
InitList(L);
PutNum(L);
if (DelList(L, 2, 4)== 0)
{
printf("出错");
}
PrintList(L);
}