| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 732 人关注过本帖
标题:一段小程序,大神帮忙看看
只看楼主 加入收藏
zhuaaaaaa
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2017-3-25
结帖率:66.67%
收藏
已结贴  问题点数:18 回复次数:2 
一段小程序,大神帮忙看看
以下是一段链表程序,链表创建和输出函数都没有问题,但是这个函数执行时好像陷入了死循环,我找不到问题在哪里,大神们帮忙看下,多谢了


void deletelink(int min,int max,linknode *phead)//给出增序链表头指针,删除大于 min 小于max的链表
{
    linknode *pa,*pb,*pc,*pnow=phead;
    while(pnow->next!=NULL&&pnow->next->data<=min)
    {
        pnow=pnow->next;
    }//链表有头结点,假设链表有9元素,头结点值为0;0-1-2-3-4-5-6-7-8-9,头结点不包括在内,min=2,max=5。先让pnow循环 至 2处
    pa=pnow;//pa=2
    pnow=pnow->next;
    pb=pnow;    //pb=pnow=3
    if(pnow!=NULL)//若pnow不空
    {
        while(pnow!=NULL&&pnow->data<max)
        {
            pnow=pnow->next;
        }//让pnow循环至 5 处
        pa->next=pnow;//2 指向 5
        while(pb!=pnow)//删除 3开始 一直到5之前的节点
            {
                pc=pb;
                pb=pb->next;
                free(pc);
            }
    }
}
搜索更多相关主题的帖子: 元素 链表程序 
2017-04-02 21:06
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:9 
pa的指向好像是该删但未删的
2017-04-03 22:23
Alien_Lee
Rank: 8Rank: 8
来 自:Linux帝国
等 级:蝙蝠侠
威 望:7
帖 子:149
专家分:739
注 册:2016-7-19
收藏
得分:9 
虽然你的程序有致命bug(比如如果min比所有的元素都大),我测试你的0-9的元素在2-5之间的话没什么问题,你把创建链表的程序发过来看看。
图片附件: 游客没有浏览图片的权限,请 登录注册



  DEBUG的过程就是进步的过程,每一个小错误都是大问题!...
2017-04-04 16:02
快速回复:一段小程序,大神帮忙看看
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.106213 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved