【暂无】 链表 建立学生链表(student.cpp)

时间:2022-02-04 19:42:20
建立学生信息链表(student.cpp)


题目描述
给出n个学生的姓名和年级,请建立一个学生信息的链表。并将链表中各元素依次输出。


输入
第一行:一个整数n


接下来n行,每行一个学生的名字和年龄。


输出
输出:


n行,每行包括学生的姓名和年龄。


样例输入
3
wuzhenghao 18
liudeyu 20
liuying 19


样例输出
wuzhenghao 18
liudeyu 20
liuying 19


提示

要求建立学生链表。

    这道题在考验我们的自觉。。。不过用链表试试也无妨,链表就是通过指针将许多的变量(也可以是结构体)连接起来,每一个指向下一个,可以完成排序!不过难度挺大,需要注意以下几点:

1.需要一个next指针链接下一个

2.需要head指针指向开始

3.需要now指针指向正在处理的结构体

4.需要t指针完成与now的交替

差不多就是这些了,代码实现也比较容易

#include<cstdio>
struct stu
{
char name[205];
int age;
stu *next;
};
int n;
int main()
{
//freopen("student.in","r",stdin);
//freopen("student.out","w",stdout);
scanf("%d",&n);
stu *head=new stu;
scanf("%s %d",head->name,&head->age);
head->next=NULL;
stu *now=head;
for(int i=2;i<=n;i++)
{
stu *t=new stu;
scanf("%s %d",t->name,&t->age);
t->next=NULL;
now->next=t;
now=t;
}
for(now=head;now!=NULL;now=now->next)
{
printf("%s %d\n",now->name,now->age);
}
}