在结束了对顺序队列的探讨后,我又开始了对队列的链式存储的学习探讨
不得不说这个项目让我对队列这一数据结构有了更深刻的认识
本项目是基于C语言数据结构课程中《链队列的定义,判空,入队,出队》的一个个人总结
由于博主尚是初学,代码颇为生疏,如有不妥之处还请大佬斧正
以下是正文
全部代码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct student{ //定义名为 student 的链队列
char name[20]; //数据域
int score;
struct student *next; //指针域
};
struct Link{
struct student *front,*rear; //声明链队列的 头指针 与 尾指针
};
void menu(void); //主菜单
void __init__(struct Link *p); //初始化链队列
void Add_student(struct Link *p); //添加学生信息(新数据入队)
void Read_student(struct Link *p); //读取学生信息
void Delete_student(struct Link *p); //删除学生信息(队头数据出队)
int studentEmpty(struct Link *p); //判队空
int main(void){
int choose; //用于主菜单的功能选择
struct Link *p = NULL;
p = (struct Link *)malloc(sizeof(struct Link)); //为指向头尾指针的指针p申请内存
int skip = 0;
__init__(p);
do{
me