zpwangshisuifeng
FrankieZhang_
2016-07-31 02:39
采纳率: 100%
浏览 990
已采纳

得不到结果,求大神帮忙指点

#include
#include
struct node
{
int data;
struct node *next;
};
int main()
{
struct node *head,*p,*q,*t;
int i,n,a;
scanf("%d",&n);
head=NULL;
for(i=1;i<=n;i++)
{
scanf("%d",&a);
p=(struct node *)malloc(sizeof(struct node));
p->data=a;
p->next=NULL;
if(head=NULL)
{
head=p;
}else
{
q->next=p;
q=p;
}
}
t=head;
while(t!=NULL)
{
printf("%d",t->data);
t=t->next;
}

return 0;

}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • wzxq123
    尚书左仆射 2016-07-31 02:56
    已采纳

    你把main函数改成这样就行了:
    int main()
    {
    struct node *head = NULL,*p,*q,*t;
    int i,n,a;

    scanf("%d",&n);
    head=NULL;

    for(i=1;i<=n;i++)
    {
    scanf("%d",&a);
    p=(struct node *)malloc(sizeof(struct node));
    p->data=a;
    p->next=NULL;

    if(head == NULL)
    {
    head=p;
    q = head;
    }else
    {
    q->next=p;
    q=p;
    }
    }

    t=head;
    while(t!=NULL)
    {
    printf("%d\t",t->data);
    t=t->next;
    }
    printf("\n");
    return 0;
    }

    点赞 评论

相关推荐