标题:求大神帮忙解答一下
取消只看楼主
wan571414
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2019-3-23
结帖率:0
已结贴  问题点数:20 回复次数:2 
求大神帮忙解答一下
# include <stdio.h>
# include <stdio.h>
# include <stdlib.h>
typedef    struct Node {
    int data;//数据域
    struct Node * pNEXT;//指针域
}NODE, *PNODE;

PNODE create_list(void);
void  traverse_list (PNODE pHead);

int main (void)
{
    PNODE pHead;
 pHead = NULL;
    pHead = create_list();//创建一个非循环单 链表
    traverse_list (pHead);
     
    return 0;
 }
PNODE  create_list(void)
{
    int i;
    int len;
    int val;
    PNODE pHead = (PNODE)malloc(sizeof(NODE)) ;
   
    if (NULL == pHead)
    {
        printf("分配失败,程序终止!\n");
        exit (-1);
      }  
      
    PNODE pToli = pHead ;
    pToli->pNEXT = NULL;
    pHead->pNEXT = pToli;
    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("分配失败,程序终止!\n");
        exit (-1);
      }  
        pNew->data = val;
        pToli->pNEXT = pNew;
        pNew->pNEXT = NULL;
        pToli = pNew;
    }
    return pHead;
}
void  traverse_list (PNODE pHead)
{
    PNODE p = pHead->pNEXT;
    while ( NULL != p)
    {
        printf ("%d ", p->data);
        p = p->pNEXT;
        
    }
    printf("\n");
   
}



为什么只能输入一个节点的值     第二个就不行了      
搜索更多相关主题的帖子: Node int void NULL printf 
2019-03-23 14:38
wan571414
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2019-3-23
得分:0 
回复 2楼 ZJYTY
输入第一个节点的值过后    就崩溃了   我使用别人的源代码就没有问题   不知道错在哪里
2019-03-24 14:06
wan571414
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2019-3-23
得分:0 
回复 4楼 ZJYTY
好的  
2019-03-25 12:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-493742-1-1.html




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

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