zzk.213 2022-10-06 15:45 采纳率: 87.8%
浏览 47
已结题

这个删除链表中所有x要怎么实现 我写完之后这个for循环在第二三种情况下停不下来

img


int DeleteNodes(Node** phead, double x) {
    Node* prev = NULL;
    Node*** pphead = &phead;
    int count = 0;
    for (int pos = 1; currNode; prev = currNode, currNode = currNode->next) {
        if (currNode->data == x) {
            if (prev) {
                prev->next = currNode->next;
                free(currNode);
                count++;
                currNode = prev;

            }
            else {
                *phead = currNode->next;
                free(currNode);
                count++;
                currNode = **pphead;
                if (currNode->next == NULL)
                    free(currNode);
            }
        }
    }
    return count;
}*/

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 10月14日
      • 已采纳回答 10月6日
      • 创建了问题 10月6日

      悬赏问题

      • ¥30 用Rsync出现报错
      • ¥15 Java建模,处理文件和对象
      • ¥15 linux磁盘怎样重新挂载到原挂载路径下
      • ¥15 Java的类和静态方法
      • ¥15 存在一定规律的数据转置和整理
      • ¥15 关于flowable工作流开发的一个问题
      • ¥20 VBA如何用代码在onedrive创建文件夹?
      • ¥15 多理发师睡眠问题,2个理发师,n个座椅
      • ¥15 FPGA两按键控制led灯程序
      • ¥40 大学的python问题,用python解决