怎么用c语言实现顺序表

时间:2026-02-12 06:07:04

1、第一步c语言是没有引用的,可以使用一个const指针来模拟引用

void InitList(SqList *L)

{

L->last=0;

}

怎么用c语言实现顺序表

2、这个是顺序表的初始化,不用管

int LenList(SqList L)

{

return L.last;

}

怎么用c语言实现顺序表

3、插入操作,这一步是关键,插入顺序表

int InsertList(SqList *L,int i,ElemType x)

{

int k;

if(L->last>=MAX)

{

printf("表已满,无法插入\n");

return 0;

}

else if(i<0 || i>L->last+1)

{

printf("插入位置不合法\n");

return 0;

}

怎么用c语言实现顺序表

4、这是接着上面的第二步,判断的

else

{

for(k=L->last;k>i-1;k--)

L->elem[k]=L->elem[k-1];

L->elem[i-1]=x;

L->last++;

return 0;

}

怎么用c语言实现顺序表

5、/删除操作,这一步是删除操作

int DelList(SqList *L,int i)

{

int k;

if((L->last<=0) || (i<0) || (i>L->last))

{

printf("删除位置不合法\n");

return 0;

}

怎么用c语言实现顺序表

6、这一步建立查找元素

int LocList(SqList L,ElemType x)

{

int i;

for(i=0;i<L.last;i++)

{

if(L.elem[i]==x)

{

printf("%d是线性表中第%d个元素\n",x,i+1);

return 0;

}

}

printf("没有找到%d\n",x);

return 0;

}

怎么用c语言实现顺序表

7、这一步是输入线性表的长度和元素

printf("请输入线性表La的长度:");

scanf("%d",&n);

La.last=n;

printf("请输入线性表La中的元素\n");

for(i=0;i<n;i++)

scanf("%d",&La.elem[i]);

怎么用c语言实现顺序表

8、解释一下canf(%d",&a) 是读取整型变量a在内存中的地址,而scanf("%d",a)是读取整型变量a的值。

怎么用c语言实现顺序表

© 2026 一点资料
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com