线性表插入元素

1196: 线性表插入元素

时间限制: 1 Sec  内存限制: 128 MB
提交: 14  解决: 12
[提交][状态][讨论版][命题人:uzzoj]

题目描述

线性表的顺序存储中,有态存储,请用动态存储形式实现线性表的创建和插入某个元素,并显示输出结果

输入

输入包括:首先输入线性表元素的个人,然后输入相应的元素,输入插入的位置以及元素

输出

输出插入相应元素后的线性表

样例输入

5 1 2 3 4 5
2 6

样例输出

1 6 2 3 4 5

 

#include <stdio.h>
#include <stdlib.h>
#define OK 1
#define ERROR 0

typedef struct
{
    int *elem;
    int length;
    int listsize;
} SqList;
int initSqList_Sq(SqList *LA,int a_len)
{
//建立一个空表格
    LA->elem=(int *)malloc(sizeof(int)*a_len);
    if(!LA->elem)return ERROR;
    LA->length=0;
    LA->listsize=a_len;
    return OK;
}
int insertList(SqList *LA,int weizhi,int shu )
{
    int j;
    if(weizhi<1&&weizhi>LA->length+1) return ERROR;

    for(j=LA->length; j>=weizhi; j--)
    {
        LA->elem[j]=LA->elem[j-1];
    }
    LA->elem[weizhi-1]=shu;
    LA->length++;
    return OK;
}
int main()
{
    SqList *LA;
    int a_len,charu,shu,i;
    LA=(SqList *)malloc(sizeof(SqList));

    scanf("%d",&a_len);
    initSqList_Sq(LA,a_len);
    for(i=0; i<a_len; i++)
    {
        scanf("%d",&LA->elem[i]);
        LA->length++;
    }
    scanf("%d %d",&charu,&shu );
    insertList(LA,charu,shu);
    for(i=0; i<LA->length; i++)
    {
        printf("%d ",LA->elem[i]);
    }
}

 

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值