#include
#define N 100
typedef struct
{
int data[N];
int last;
}Array;
void Create(Array *L,int m);
void Print(Array *L);
void Delet(Array *L,int i,int k);
int main()
{
Array L;
int m = 0;
int i,k;
printf("请输入数组的有效长度:\n");
scanf("%d",&m);
L.last = m - 1;
Create(&L,m);//创建顺序表
Print(&L);
printf("请输入从第几个元素开始删除:\n");
scanf("%d",&i);
printf("请输入要删除的元素的个数:\n");
scanf("%d",&k);
Delet(&L,i,k);
Print(&L);
return 0;
}
void Create(Array *L,int m)
{
int i;
printf("请输入一组数字:\n");
for(i = 0;i <= m-1;i++)
{
scanf("%d",&L->data[i]);
}
}
void Print(Array *L)
{
int i;
printf("请输出数组:\n");
for(i = 0;i <= L->last;i++)
{
printf("%d ",L->data[i]);
}
printf("\n");
}
void Delet(Array *L,int i,int k)
{
int j;
if((i < 1)||(i > L->last+1 ))
{
printf("删除位置不合理");
}
for(j = i;j <= L->last;j++)
{
L->data[j-1] = L->data[j + k-1];
}
L->last = L->last-k;
}