qq_43928395 2019-07-30 12:28 采纳率: 66.7%
浏览 296
已采纳

初学者提问:链表相关问题

#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
typedef struct Node
{
    int data;**_//数据域_**_
    struct Node *pNext;**_//指针域_**

}Node,*pNode;**_//Node等价与 struct Node,pNode等价与 struct Node* _**
pNode create_list(void)**_;//该函数功能是创建一个非循环单链表,并将该链表的头结点的地址发生给phead_**  
 void traverse_list(pNode phead);**_//该函数功能是将一个链表进行便历 _**
int main(void)
{
    pNode phead =NULL;**_//等价于 struct Node* phead=NULL; _**
       phead=create_list();
       traverse_list(phead);
    return 0;
}
pNode create_list(void)
{
    int length;**_//链表的长度 _**
    int val;**_//用来存放用户临时存入结点的值 _**
    int i;
    pNode phead=(pNode)malloc(sizeof(Node));**_//分配了一不存放有效数据的头结点 _**
    if(NULL==phead)
    {
        printf("分配内存失败,程序终止!\n");
        exit(-1);
    }
    pNode pTail=phead;**_//分配了一个尾结点_** 
    pTail->pNext=NULL; 
    printf("请输入您需要生成链表结点的个数:length=");
    scanf("%d",&length);
    for(i=0;i<length;++i)
    {
        printf("请输入第%d个结点数据:",i+1);
        scanf("&d",&val);
        pNode pNew=(pNode)malloc(sizeof(Node)); 
    if(NULL==pNew)
    {
        printf("分配内存失败,程序终止!\n");
        exit(-1);
    }
     printf("\n");
    pNew->data=val;**_//给新结点的数据域赋值 _**
    pTail->pNext=pNew;**_//将尾结点指向新结点 _**
    pNew->pNext=NULL;**_//将新结点的指针域清空 _**
    pTail=pNew;**_//将新结点变为尾结点 _**
    }
    return phead;
 }  
  void traverse_list(pNode phead)

  {
    pNode p=phead->pNext;
    while(NULL!=p)
      {
        printf("%d\n",p->data);
        p=p->pNext;
       } 
       printf("\n");
       return;
  }



为什么会出现这样的情况?
图片说明

  • 写回答

1条回答

  • 牛在哪里 2019-07-30 14:18
    关注

    有笔误
    scanf("&d",&val);
    改一下就正常了
    scanf("%d", &val);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法