kanon0 2021-09-18 08:53 采纳率: 66.7%
浏览 60
已结题

用c语言编写插入算法

编写算法,在一个有5个元素的顺序表中,在元素值为x的元素后,连续插入两个新元素

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-09-18 08:54
    关注

    将x之后的值都后移两位,然后将新值写入x的后两位

    typedef struct _seqlist
    {
          int data[100];
          int n;
    }seqlist;
    seqlist s;
    s.n = 0;
    void insert(int x,int a,int b)
    {
        for(int i=0;i<s.n;i++)
        {
                if(s.data[i] == x)
                {
                        for(int j=s.n+1;j>i+1;j--)
                              s.data[j] = s.data[j-2];
                        s.data[i] = a;
                        s.data[i+1] = b;
                        s.n += 2;
                        break;
                }
        }
    }
    int main()
    {
            for(int i=0;i<4;i++)
                s.data[s.n++] = i;
            insert(3,10,20);
            return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月18日
  • 创建了问题 9月18日