69,381
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct node {
int a[10];
int length;
}SeqList, *PSeqList;
void Delete(PSeqList PL, int x, int y)
{
int i, j=0;
for(i=0; i< PL->length; i++)
{
if (PL->a[i]>x && PL->a[i]<y)
{
j++;
// printf("found match a[%d]=%d, j=%d\n", i, PL->a[i], j);
}
else
{
int count = PL->length-i-1; //printf("count=%d\n", count);
PL->length--;
if (count > 0) {
memmove(&PL->a[i], &PL->a[i+1], sizeof(int)*count);
i--;
}
}
}
}
int main(void)
{
int k;
PSeqList PL;
int a[10] = {2,4,3,67,35,89,233,23232,2332,23323};
PL=(PSeqList)malloc(sizeof(SeqList));
memcpy(PL->a, a, sizeof(a));
PL->length = 10;
Delete(PL, PL->a[0], PL->a[3]);
for(k = 0; k < PL->length; k++)
{
printf("%d ",PL->a[k]);
}
}