c语言

c语言怎么用链表写学生信息

小亿
126
2024-01-13 14:28:21
栏目: 编程语言

使用链表实现学生信息的存储和管理,可以按照以下步骤进行操作:

  1. 定义学生信息的结构体,包含学号、姓名、年龄等信息。
typedef struct {
    int id;
    char name[20];
    int age;
} Student;
  1. 定义链表节点的结构体,包含学生信息和指向下一节点的指针。
typedef struct Node {
    Student student;
    struct Node *next;
} Node;
  1. 定义链表的头节点指针和尾节点指针,并初始化为NULL。
Node *head = NULL;
Node *tail = NULL;
  1. 实现添加学生信息的函数,将新学生信息作为节点插入链表末尾。
void addStudent(Student student) {
    Node *newNode = (Node *)malloc(sizeof(Node));
    newNode->student = student;
    newNode->next = NULL;

    if (head == NULL) {
        head = newNode;
        tail = newNode;
    } else {
        tail->next = newNode;
        tail = newNode;
    }
}
  1. 实现遍历链表的函数,打印所有学生信息。
void printStudents() {
    Node *node = head;
    while (node != NULL) {
        printf("学号:%d, 姓名:%s, 年龄:%d\n", node->student.id, node->student.name, node->student.age);
        node = node->next;
    }
}
  1. 可以根据需要实现其他功能,如删除学生信息、查找学生信息等。

使用以上步骤,可以使用链表来存储和管理学生信息。

0
看了该问题的人还看了