输入若干学生的信息(学号、姓名、成绩),当输入学号为 0 时结束,用单向链表组织这些学生信息后,再按序输出。
#include
#include
#include
structstud_node
{
intnum;
char name[20];
int score;
structstud_node next;
};
int main()
{
structstud_node *head,tail,*p;
intnum,score;
char name[20];
int size = sizeof(structstud_node);
head=tail=NULL;
printf(“input num,name and score:\n”);
scanf(“%d”,&num);
while(num != 0)
{
p=malloc(size);
scanf(“%s%d”,name,&score);
p->num=num;
strcpy(p->name,name);
p->score=score;
p->next=NULL;
tail->next=p;
tail=p;
scanf(“%d”,&num);
}
for(p=head;p->next != NULL;p=p->next)
printf(“%d %s %d\n”,p->num,p->name,p->score);
return 0;
}
测试说明
对你编写的代码进行测试:
测试输入:1001,张三,90,1002,李四,85,0
预期输出:
1001 张三 90
1002 李四 85