顺序表静态插入基本操作

#include<stdio.h>   

#define MaxSize 10

typedef struct {

    int data[MaxSize];

    int length;

}SqList;

void InitList(SqList& L) {     //一定要初始化顺序表为0

    L.length = 0;

}

bool ListInsert(SqList& L, int i, int e) {     //不是void时,都要返回值

    if (i > L.length||i<1||i>L.length+1) {

         return false;

    }

    else {

         for (int j = L.length; j >= i; j--) {

             L.data[j] = L.data[j-1];    //一定是j-1赋给j,

         }

         L.data[i-1] = e;

         L.length++;

         return true;

    }

   

}

int main() {

    SqList L;

    InitList(L);

    int a = 0;

    L.length = 5;    //不要忘记设置长度     

    for (int i = 0; i < L.length; ++i) {    //向顺序表里加入数据

         L.data[i] = 1 + a++;

         printf("%d ", L.data[i]);

    }

    printf("\n");

    ListInsert(L, 2, 6);    //在第二个位置插入6

    for (int i = 0; i < L.length; ++i) {      //打印插入后顺序表数据

         printf("%d ", L.data[i]);

    }

    return 0;

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值