我所爱者御坂美琴 2020-02-29 20:51 采纳率: 0%
浏览 454

单向链表删除节点问题

本人写了一个书籍管理系统,用单向链表写的,但是在删除指定书籍(节点)时崩溃
,我试了很长时间,都没有解决,今天把代码放上,有懂得的大佬帮忙解决一下,不胜感激。

Book Delete(Book ptr,  string No)
{
    Book p = ptr;
    int x = Number(p);
    if (x == 0)
    {
        cout << "书架无书,删除失败" << endl;
    }
    if (x == 1)
    {
        Book temporary = ptr->next;
        ptr->next = NULL;
        delete temporary;
        temporary = NULL;
        cout << "删除书籍成功" << endl;
        return ptr;
    }
    if (x > 1)
    {
        do
        {
            Book ptrpro = ptr;
            ptr = ptr->next;
            if (ptr->No == No)
            {
                Book temporary = ptr;
                ptrpro->next = temporary->next;
                delete temporary;
                temporary = NULL;
                cout << "删除书籍成功" << endl;
                break;
            }
        } while (p != NULL);
        return p;
    }
}

Number函数为检测书架有多少本书的函数,书架的书大于1本时,老是崩溃

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2020-02-29 22:24
    关注
    评论

报告相同问题?

悬赏问题

  • ¥50 通过下面文章的方法求手机号段
  • ¥15 有偿求码,CNN+LSTM实现单通道脑电信号EEG的睡眠分期评估
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体