河南成教 / 河南理工大学
5[阅读题]
阅读下列算法,并回答问题:
(1)设顺序表L=(3,7,11,14,20,51),写出执行f30(&L,15)之后的L;
(2)设顺序表L=(4,7,10,14,20,51),写出执行f30(&L,10)之后的L;
(3)简述算法的功能。
void f30(SeqList*L, DataType x)
{
int i =0, j;
while (i<L->length && x>L->data[i])i ;
if(i<L->length && x==L->data[i]) {
for(j=i 1;j<L->length;j )
L->data[j-1]=L->data[j];
L->length--;
} else {
for(j=L->length;j>i;j--)
L->data[j]=L->data[j-1];
L->data[i]=x;
L->length ;
}
}
(1)
(2)
(3)
5[阅读题]
阅读下列算法,并回答问题:
(1)设顺序表L=(3,7,11,14,20,51),写出执行f30(&L,15)之后的L;
(2)设顺序表L=(4,7,10,14,20,51),写出执行f30(&L,10)之后的L;
(3)简述算法的功能。
void f30(SeqList*L, DataType x)
{
int i =0, j;
while (i<L->length && x>L->data[i])i ;
if(i<L->length && x==L->data[i]) {
for(j=i 1;j<L->length;j )
L->data[j-1]=L->data[j];
L->length--;
} else {
for(j=L->length;j>i;j--)
L->data[j]=L->data[j-1];
L->data[i]=x;
L->length ;
}
}
(1)
(2)
(3)
参考答案: