C语言学生信息系统:链式结构实现与代码示例
链式结构是一种数据结构,它由一系列的节点(Node)组成,每个节点包含两部分:数据域和指针域。在C语言中,可以使用结构体来定义一个节点,通过指针指向下一个节点,从而形成链式结构。
在学生信息系统中,可以使用链式结构来存储学生的信息。每个节点表示一个学生,包含学生的姓名、学号、年龄等信息。
下面是一个简单的学生信息系统的链式结构的示例:
#include <stdio.h>
#include <stdlib.h>
// 定义学生信息节点
struct Student {
char name[20];
int id;
int age;
struct Student* next; // 指向下一个节点的指针
};
// 打印学生信息
void printStudent(struct Student* student) {
printf('姓名:%s 学号:%d 年龄:%d\n', student->name, student->id, student->age);
}
int main() {
// 创建学生信息节点
struct Student* student1 = (struct Student*)malloc(sizeof(struct Student));
struct Student* student2 = (struct Student*)malloc(sizeof(struct Student));
struct Student* student3 = (struct Student*)malloc(sizeof(struct Student));
// 设置学生信息
strcpy(student1->name, '张三');
student1->id = 1001;
student1->age = 18;
strcpy(student2->name, '李四');
student2->id = 1002;
student2->age = 19;
strcpy(student3->name, '王五');
student3->id = 1003;
student3->age = 20;
// 构建链表关系
student1->next = student2;
student2->next = student3;
student3->next = NULL;
// 遍历链表并打印学生信息
struct Student* current = student1;
while (current != NULL) {
printStudent(current);
current = current->next;
}
// 释放内存
free(student1);
free(student2);
free(student3);
return 0;
}
以上代码创建了三个学生信息节点,并通过指针建立了链表关系,最后遍历链表打印学生信息。注意在使用完链表后要记得释放内存,以避免内存泄漏。
原文地址: https://www.cveoy.top/t/topic/pine 著作权归作者所有。请勿转载和采集!