链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
链表包含
(1)实际数据
(2)下一个节点的地址
创建一个静态链表
#include<stdio.h>
struct Student
{
int num;
float score;
struct Student *next;
};
int main()
{
struct Student a,b,c,*head,*p;
a.num=1001; a.score=11;
b.num=1002; b.score=13;
c.num=1003; c.score=15;
head=&a;
a.next=&b;
b.next=&c;
c.next=NULL;
p=head;
while(p!=NULL)
{
printf("%d %.2f\n",p->num,p->score);
p=p->next;
}
return 0;
}
两个运算符 ->和.
->用于指针型变量,如p->score中,p是一个地址,score是一个存储实际数据的变量名
.用于结构体变量,如A.score中,A是一个结构体的名字,score是结构体的一个成员变量