| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2010 人关注过本帖
标题:链表是否为空的问题,求帮助!!
只看楼主 加入收藏
X15810803158
Rank: 2
等 级:论坛游民
帖 子:49
专家分:36
注 册:2015-2-24
结帖率:91.67%
收藏
 问题点数:0 回复次数:3 
链表是否为空的问题,求帮助!!

怎么节点无论输入是几时,总打印出 此链表为空....  

希望大家帮忙看一下。。







#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>

typedef struct node
{
    int date;
    struct node * pnext;
}NODE,*PNODE;

PNODE creat_list (void);

void traverse_list (PNODE);
bool empty (PNODE);
int main (void)
{
    PNODE phead = NULL;
    phead = creat_list ();
    if (empty (phead))
    {
        printf("此链表为空!\n");
        
 
    }
    else
    {
        printf("此链表不为空!\n");
    }

    traverse_list (phead);

    return 0;
}

PNODE creat_list (void)
{
    int i,val,len;
   

    PNODE phead = (PNODE)malloc(sizeof(NODE));
    if(NULL == phead)
    {
        printf("分配失败!!\n");
        exit(-1);
   
    }

    PNODE ptail = phead;
    ptail->pnext = NULL;


    printf("请输入节点的个数:len = ");
    scanf("%d",&len);

    for (i=0; i<len; i++)
    {
        printf("请输入第%d个节点的个数:",i+1);
        scanf("%d",&val);
        PNODE pnew = (PNODE)malloc(sizeof(NODE));
        if (NULL == pnew)
        {
            printf("分配失败!!");
            exit(-1);
        
        }
        
        pnew->date = val;
        ptail->pnext = pnew;
        pnew->pnext = NULL;
        ptail = pnew;



   
   
   
   
    }

   return phead;

}

void traverse_list (PNODE phead)
{
    PNODE p = phead->pnext;

    while (p != NULL)
    {
        printf("%3d",p->date);
        p = p->pnext;
   
    }

    printf("\n");
   return ;
}

bool empty (PNODE phead)
{
    if ( NULL== phead)
    {
        return true;
   
    }

    else
        return false;


}
搜索更多相关主题的帖子: include 
2015-12-01 15:39
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
请输入节点的个数:len = 3
请输入第1个节点的个数:5
请输入第2个节点的个数:5
请输入第3个节点的个数:4
此链表不为空!
  5  5  4
请按任意键继续. . .

DO IT YOURSELF !
2015-12-01 15:51
X15810803158
Rank: 2
等 级:论坛游民
帖 子:49
专家分:36
注 册:2015-2-24
收藏
得分:0 
我刚才仔细检查了一下  弄好了 谢谢大家

2015-12-01 16:00
X15810803158
Rank: 2
等 级:论坛游民
帖 子:49
专家分:36
注 册:2015-2-24
收藏
得分:0 
回复 2楼 wp231957

谢了。。。

你试试  len = 0  ;
结果还是    “此链表不空”

刚才我漏写了
if (NULL == phead->pnext)
2015-12-01 16:04
快速回复:链表是否为空的问题,求帮助!!
数据加载中...
 
   



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

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