关于链表的一个小问题
#include<stdio.h>
#include<malloc.h>
typedef struct
{
int num;
char name[20];
} elemtype;
typedef struct LNode
{
elemtype data;
struct LNode *next;
} node;
int main()
{
int i=0;
node *head,*p,*q;
head=NULL;
q=p=(node *)malloc(sizeof(node));
while( (p->data).num !=0)
{
if(p!=NULL)
{
printf("Please input :\n");
scanf("%d, %s",((p->data).num),((p->data).name));
if(0==i)
{
head=p;
i++;
}
else
q->next=p;
q=p;
}
// q=p;
p=(node *)malloc(sizeof(node));
}
printf("%d\n",sizeof(elemtype));
system("pause");
return 0;
}
程序不能正常运行,应该是标红的地方有问题,可我看不出来,哪位能说说