m0_62660587 2022-03-23 01:28 采纳率: 78.6%
浏览 104
已结题

c++的相关问题,用c++

img


c++的相关问题,用c++的方法解决,不要用太复杂的,简单点的即可

  • 写回答

5条回答 默认 最新

  • qfl_sdu 2022-03-23 14:06
    关注

    运行结果:

    img

    代码:

    #include <iostream>
    using namespace std;
    
    typedef struct _linknode
    {
        int data;
        struct _linknode* next;
    }LinkNode;
    
    int main()
    {
        int i, data, n;
        LinkNode* head, * p, * t, * front;
        head = new LinkNode;
        head->next = 0;
        p = head;
    
        //输入n
        cin >> n;
        //输入n个数据
        for (i = 0; i < n; i++)
        {
            t = new LinkNode;
            cin >> t->data;
            t->next = 0;
            p->next = t;
            p = t;
        }
        //输入插入的数据
        cin >> data;
        t = new LinkNode;
        t->data = data;
        t->next = 0;
        //如果比最后一个元素大,直接插入最后一个位置
        if (t->data > p->data)
        {
            p->next = t;
        }
        else
        {
            front = head;
            p = front->next;
            while (p)
            {
                if (p->data > t->data)
                {
                    front->next = t;
                    t->next = p;
                    break;
                }
                else
                {
                    front = p;
                    p = p->next;
                }
            }
        }
    
        //输出
        p = head->next;
        int flag = 0;
        while (p)
        {
            if (flag == 0)
            {
                cout << p->data;
                flag = 1;
            }
            else
                cout << " " << p->data;
            p = p->next;
        }
        
        return 0;
    
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 4月1日
  • 已采纳回答 3月24日
  • 创建了问题 3月23日