Graph
我不知道这个程序有什么问题。每次我尝试编译该程序时都会发生错误:"分段错误(核心转储)"。我在Ubuntu做这个程序。分段错误意味着什么,我该如何解决?
答案 0 :(得分:0)
也许下次你应该使用调试器。
#include<stdio.h>
#include<stdlib.h>
struct node
{
int data;
struct node *next;
};
struct node *head;
void insert(int a)
{
> struct node* temp=malloc(sizeof(struct node));
struct node* temp1;
> if(head==NULL)
{
temp->data=a;
temp->next=NULL;
head=temp;
return;
}
> else
{
temp1=head;
temp->data=a;
> temp->next=NULL;
while(temp1->next!=NULL)
{
> temp1=temp1->next;
}
> temp1->next=temp;
}
}
void print()
{
struct node* temp2;
temp2=head;
> while(temp2!=NULL)
{
printf("the data are %d",temp2->data);
> temp2=temp2->next;
}
}
int main()
{
int n,a,i;
printf("how many number");
scanf("%d",&n);
head=NULL;
> for(i=0;i<n;i++)
{
printf("enter the no. to store");
scanf("%d",&a);
insert(a);
print();
}
}