#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*Linklist;
Linklist Create(Linklist L){
LNode *p;
int x;
scanf("%d",&x);
p=(LNode*)malloc(sizeof(LNode));
p->data=x;
p->next=L->next;
L->next=p;
while(x!=9999)
{
p=(LNode*)malloc(sizeof(LNode));
p->data=x;
p->next=L->next;
L->next=p;
scanf("%d",&x);
}
return L;}
void printL(Linklist L){
LNode *p= L->next;
while(p){
printf("%d ",p->data);
p = p->next;
}
return;
}
int main()
{
Linklist L;
L=(LNode*)malloc(sizeof(LNode));
L->next=NULL;
Create(L);
printL(L);
return ;
}
是你自己加了两遍第一个数值好不好啊
删掉14-17行就好了,你这段等于把第一个x多加了一遍