下列算法实现在顺序表 L 的第 i ( 1 ≤ i ≤ L->length+1 )个结点的位置上插入值为 t 的元素,其中 ListSize 为顺序表 L 的容量,表中第 1 个结点的数据存放在数组元素 L->data[0] 中。下列选项中能完成此功能的语句序列为( )。 void InsertList(SeqList *L,DataType t,int i) {// 将 t 插入顺序表 L 的第 i 个结点的位置上 int j; if (i<1||i>L->length+1) {puts(" 插入位置错 ");exit(0);} if (L->length>=ListSize) {puts(" 表满不能插入 ");exit(0);} else { for(j=L->length-1;j>=i-1;j--) 1 // 结点依次后移 2 // 插入 t 3 // 表长加 1 } }
A.
①L->data[j-1]=L->data[j]; ②L->data[i]=t; ③L->length+1;
B.
①L->data[j-1]=L->data[j]; ②L->data[i-1]=t; ③L->length++;
C.
①L->data[j+1]=L->data[j]; ②L->data[i-1]=t; ③L->length++;
D.
①L->data[j+1]=L->data[j];②L->data[i]=t; ③L->length+1;