01-建立静态链表

一、实现思路

1、声明一个结构体类型,成员有数据类型和指针变量next;
2、将第一个结点的起始地址赋给头指针head,将第二个结点的起始地址赋给第一个结点的next成员,将第三个结点的起始地址赋值给第二个结点的next成员。第三个结点的next成员赋值为NULL,这样就形成了链表。

二、程序设计

`#include <stdio.h>
`
struct Student{
    int num;    //学号
    float score;// 分数
    struct Student *next; //next是指针变量,指向结构体变量
};

int main()
{
    struct Student a,b,c;    //定义三个结构体变量a、b、c作为链表结点
    struct Student *head,*p;   //定义头指针head和指针p

    //对结点成员赋值
    a.num=10001;
    a.score=100;

    b.num=10002;
    b.score=90.5;

    c.num=10003;
    c.score=89.5;

    head=&a;    //将结点a的起始地址赋给头指针
    a.next=&b;  //将结点b的起始地址赋给结点a的next成员
    b.next=&c;  //将结点c的起始地址赋给结点b的next成员
    c.next=NULL;//结点c的next成员不存放其它结点地址

    p=head;

    do{
        printf("%d %5.2f\n",p->num,p->score);
        p=p->next;
    }while(p != NULL);

  return 0;
}

posted @ 2023-10-06 11:54  xioahuhu  阅读(8)  评论(0编辑  收藏  举报