回复 8楼 m21wo
你好,昨天你教我那个我已经弄出来了,按照你所写的那样!!现在我又有两个问题,要接着在刚刚的程序后面接着做两个操作。一开始不是输入了五个同学的信息并且输出了嘛,现在要接着删除第二个同学的信息,并输出结果,完了以后再在第四个学生前面输入一个学生的信息。
删除的操作我写出来如此:
status ListDelete_sq(sqlist &L, int k, Elemtype &e)
{
if((k<1)||(k>L.length))
return ERROR;
p=&(L.elem[k-1]);
e=*p;
q=L.elem+L.length-1;
for(++p;p<=q;++p)
*(p-1) = *p;
--L.length;
return OK;
}
但是删除的主程序我就不知道怎么写出来了。插入第四个同学的信息情况也一样:
status ListInsert_sq(sqList &L,int m, Elemtype e);
{
if(m<1||m>L.length=1) return ERROR;
if(L.length>=L.listsize)
{
newbase=(Elemtype *)realloc(L.elem,(L.listsize+Listcrement)*sizeof(Elemtype));
if(!newbase) exit(OVERFLOW);
L.elem=newbase;
L.listsize+=Listcrement;
}
q=&(L.elem[m-1]);
for(p=&(L.elem[L.length-1]);p>=q;--p)
*(p+1)=*p;
*q=e
++L.length;
return OK;
}
算法弄出来后面接着的主程序也不会写,好痛苦。它提示的那些错误都不知道怎么解决,你能教教我吗?谢谢了!