求助无序链表输出问题
#include<iostream.h>struct node //定义学生结点结构体
{ int no;
char name[8];
float eng,phi,math,ave;
node *next;
};
node * Create(void) //无序链表函数的建立
{ int no; //定义输入学生学号临时变量no
node *head,*pn,*pt; //定义链表头指针、新结点指针、尾指针head,pn,pt
head=0; //链表头指针赋0,表示链表为空
cout<<"产生无序链表,请输入学生学号与成绩,以-1为结束:"<<endl;
cin>>no; //输入学号
while(no!=-1) //学号为-1时结束输入
{ pn=new node; //动态分配新结点内存空间,并将结点地址赋给pn
pn->no=no; //输入学号
cin>>pn->no>>pn->name>>pn->eng>>pn->math>>pn->phi; //输入成绩
if(head==0) //若链表为空
{ head==pn; //则将新结点地址由pn赋给头指针head与尾指针pt
pt=pn;
}
else //否则链表非空
{ pt->next=pn; //将新结点地址由pn赋给链尾的next指地与尾指针pt
pt=pn;
}
cin>>no; //输入学号
}
pt->next=0; //链尾指针变量赋0
return head; //返回链表的头指针
}
void main(void)
{ node *had;
had=Create();
}