C语言建立简单的静态链表
- 建立一个简单的静态链表,它由3个学生数据的节点组成,要求输出各节点中的数据:
- 声明一个结构体类型,其成员包括num(学号),score(成绩),和next指针变量。
- 将第一个节点的其实地址赋给头指针head,将第二个节点的起始地址赋给第一个节点的next成员,依次。第3个节点的next成员为NULL,形成链表。
- 代码如下:
#include<stdio.h>
struct student
{
int num;
float score;
struct student *next;
};
int main()
{
struct student a,b,c,*p,*head;
a.num=101;a.score=80;
b.num=102;b.score=90;
c.num=103;c.score=100;
head=&a;
a.next=&b;
b.next=&c;
c.next=NULL;
p=head;
while(p!=NULL){
printf("%d %5.1f\n",p->num,p->score);
p=p->next;
}
// do
// {
// printf("%d %5.1f\n",p->num,p->score);
// p=p->next;
//
// }while(p!=NULL);
return 0;
}
- 运行结果如下: