给链表添加数据
下面有两个给链表添加项和显示的方法,
现在的问题是添加到第三项及以后时会覆盖第二项,请大家帮忙看一下.
struct student
{
char name[20];
int age;
float mark;
struct student *next;
};
struct student *head,*tail;
void addStu()
{
struct student *insert;
insert=(struct student *)malloc(stuLen);
printf("input name:\n");
scanf("%s",&insert->name);
printf("input age:\n");
scanf("%d",&insert->age);
printf("input mark:\n");
scanf("%f",&insert->mark);
insert->next=null;
if(head==null)
{
head=tail=insert;
}
else
{
tail->next=insert;
insert->next=null;
}
void view()
{
struct student *p;
p=head;
while(p!=null)
{
printf("name=%s age=%d mark=%f\n",p->name,p->age,p->mark);
p=p->next;
}
getch();
}