算法2(线性表)

具有相同数据类型的n(n>=0)个数据元素的有限序列,其中n为表长,当n=0是,线性表是一个空表。若用L命名线性表,则一般表示为

L=(a1,a2,a3...ai,a(i+1)...,an)

基本操作:

初始化表(LnitList(&L)),销毁操作(DestoryList(&L))

插入操作(ListInsert(&L,i,e)),删除操作(ListDelete(&L,i,&e)

按值查找操作(LocateElem(L,e)),按位查找操作(GetElem(L,i))

  其他常用操作:

Length(L):求表长

PrintList(L):输出操作

Empty(L):判空操作

!!!!!:什么时候要传入参数的引用“&”——对参数的修改结果要“带回来”

例:

void fun(int n)
{
    n=2024;
    printf("函数中:n==%d\n",n);
}
int main()
{
    int n=1;
    printf("函数前:n==%d\n",n);
    fun(n);
    printf("函数后:n==%d\n",n);
}

这个代码的结果是

很明显,n的值没有被带回来;

这样解决:

c语言中需要运用到指针

void fun(int *n)
{
    *n=2024;
    printf("函数中:n==%d\n",*n);
}
int main()
{
    int n=1;
    printf("函数前:n==%d\n",n);
    int *p=&n;
    fun(p);
    printf("函数后:n==%d\n",n);
}

这样的结果就是:

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值