c写的单链表 总是提示段异常, 求救大虾

来源:百度知道 编辑:UC知道 时间:2024/06/03 23:10:46
程序如下,问题rt 在线等大虾。。。

//链表 头结点是空
#include<stdio.h>
#include<stdlib.h>

typedef struct Node
{
int data;
struct Node *next;
}LNode,*ListNode;

ListNode creat()
{
ListNode head,end,real; //头指针
int flag=1;//置标志位 若为0输入结束
int x;
head=new LNode;//新建头指针
//end=new LNode;
head->next=NULL;//头结点任意,next指向的是空
end=head; // 起始时尾结点指向的是头结点
printf("输入链表以0为结束:");
while(flag)
{ scanf("%d",&x);
if(x!=0)
{
real=new LNode; //新建当前指针
real->data=x; //数值域赋值
end->next=real;
end=real; //end指针指向尾结点
// head->next->data=x;
//en

//链表 头结点是空
#include<stdio.h>
#include<stdlib.h>

typedef struct Node
{
int data;
struct Node *next;
}LNode,*ListNode;

ListNode creat()
{
ListNode head,end,real; //头指针
int flag=1;//置标志位 若为0输入结束
int x;
head=new LNode;//新建头指针
//end=new LNode;
head->next=NULL;//头结点任意,next指向的是空
end=head; // 起始时尾结点指向的是头结点
printf("输入链表以0为结束:");
while(flag)
{ scanf("%d",&x);
if(x!=0)
{
real=new LNode; //新建当前指针
real->data=x; //数值域赋值
end->next=real;
end=real; //end指针指向尾结点
// head->next->data=x;
//end= head->next
}
else
{

flag=0;
end->next=NULL;

}
}
return head;
}

void PrintList(ListNode head)//打印单链表
{
// ListNode creat();
ListNode p;
// p=new LNode;
// p=head->next;
p=head