删除L的第i个数据元素,并用e返回其值,L的长度减1 10

在最后补充intListDelete(sqList*L,inti,inte)函数#include<stdio.h>#include<stdlib.h>#defineLIS... 在最后补充int ListDelete(sqList *L,int i,int e)函数

#include<stdio.h>
#include<stdlib.h>
#define LIST_INIT_SIZE 10
#define LIST_INCREMENT 10
typedef struct sqList
{

int *elem;//存储空间基址
int length;//当前长度(已有元素的个数)
int listsize;//当前分配的存储容量(以sizeof(ElemType)为单位)
}sqList;
void InitList(sqList *);
void Display(sqList );
int LocateElem(sqList L,int e);
int ListInsert(sqList *L, int i,int e);
int ListDelete(sqList *L,int i,int e);
void main()
{
sqList sql1;
InitList(&sql1);
printf("请输入sql1的值!\n");
for(int i=0;i<sql1.listsize-5;i++)
{
scanf("%d",&sql1.elem[i]);
sql1.length++;
}
Display(sql1);
ListInsert(&sql1,3,3);
Display(sql1);
//添加删除函数

}
void InitList(sqList* L)
{
L->elem=(int*)malloc(LIST_INIT_SIZE*sizeof(int));
if(!L->elem)
exit(-1);
L->length=0;
L->listsize=LIST_INIT_SIZE;
}

void Display(sqList L)
{
int i=0;
while(i<L.length)
{
printf("%d\t",L.elem[i]);
i++;
}
printf("\n");
}

//初始条件:线性表L已经存在,1<=i<=ListLength(L)+1
//操作结果:在L中第i个位置之前插入新的数据元素e,L的长度加1
int ListInsert(sqList *L,int i,int e)
{
int *newbase,*q,*p;
if(i<1||i>L->length+1)//i值不合法
return 0;
if(L->length>=L->listsize)//当前存储空间已满,增加分配
{
if(!(newbase=(int*)realloc(L->elem,(L->listsize+LIST_INCREMENT)*sizeof(int))))
exit(-1);//存储分配失败
L->elem=newbase;//新基址
L->listsize+=LIST_INCREMENT;//增加存储容量
}
q=L->elem+i-1;//指向要插入的位置
for(p=L->elem+L->length-1;p>=q;--p)//p指向最后一个元素得位置
*(p+1)=*p;//往后挪动,挪动了L.length-i+1次
*q=e;//插入e
++L->length;
return 1;
}
/*--------------------------------------------------------------------------

操作结果:删除L的第i个数据元素,并用e返回其值,L的长度减1
---------------------------------------------------------------------------
int ListDelete(sqList *L,int i,int e)
{

}*/
展开
 我来答
天瘦大凌爱499
2012-02-22 · TA获得超过6.5万个赞
知道大有可为答主
回答量:3.5万
采纳率:0%
帮助的人:4652万
展开全部
a4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1062904879
2012-02-22
知道答主
回答量:33
采纳率:0%
帮助的人:10.4万
展开全部
j
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vinix
2012-02-22 · TA获得超过214个赞
知道小有建树答主
回答量:299
采纳率:0%
帮助的人:287万
展开全部
我想知道你怎么用e返回其值啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sunhaixiang110
2012-02-22
知道答主
回答量:36
采纳率:0%
帮助的人:13.8万
展开全部
awdAWdawfrawffAFwAWf
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式