打印

数据结构

[复制链接]
290|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
石头张|  楼主 | 2019-10-30 16:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在在弄数据结构,写的第一个程序就出现了问题,说这个函数PNODE create_list(void);的PNODE是illegal,,代码在下面,,求大神赐教!!#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);
void traverse_list(PNODE pHead);

int main(void)
{
        PNODE pHead = NULL; //等价于struct Node * pHead = NULL; int pHead = NULL;
        pHead = create_list();/* create_list()的功能:
                                                     创建一个非循环单链表,
                                                     并将该链表的头结点的
                                                     地址赋值给了pHead */  
        traverse_list(pHead);
        return 0;
}

PNODE create_list(void)
{
        int len;//用于存放有效节点的个数
        int i;
        int val;//用于临时存放用户输入的结点的值

        //分配了一个不存在有效数据的头结点
        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("分配失败,程序终止!\n");
                        exit(-1);               
                }
                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", p->data);
                p = p->pNext;
         }
        printf("\n");
        return 0;
}

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

446

主题

446

帖子

0

粉丝