#include
#include
- struct student
- {
- int num;
- char name[20];
- struct student *pnext;
- };
- int n;
- struct student *creat()
- {
- struct student *head;
- struct student *pnew,*pend;
- head=NULL;
- n=0;
- pnew=pend=(struct student *)malloc(sizeof(struct student));
- scanf("%d",&pnew->num);
- scanf("%s",&pnew->name);
- while(pnew->num!=0)
- {
- n++;
- if(n==1)
- head=pnew;
- else
- { pend->pnext=pnew;
- pend=pnew;
- }
- pnew=(struct student *)malloc(sizeof(struct student));
- scanf("%d",&pnew->num);
- scanf("%s",&pnew->name);
- }
-
- pend->pnext=NULL;
- return head;
- }
- void print(struct student *head)
- {
- struct student *temp;
- temp=head;
- while(temp->num!=0)
- {
- printf("%d\n",temp->num);
- printf("%s\n",temp->name);
- temp=temp->pnext;
- }
- }
- void main()
{
struct student *phead;
phead=creat();
print(phead);
}