C++实现基础:创建、插入与删除链表程序

需积分: 1 0 下载量 30 浏览量 更新于2024-09-14 收藏 4KB TXT 举报
本资源是一份关于C++编程的小程序示例,主要涉及链表操作,包括创建、插入和删除节点。标题"一道小程序"表明这是一道用于实践C++基础数据结构的练习题目,涉及到的三个关键函数分别是`print()`、`insert()`和`del()`。 1. `#include<stdio.h>` 和 `#include<malloc.h>` 表明程序使用了标准输入输出流库(stdio)和内存管理库(malloc),分别用于读取用户输入和动态分配内存。 2. `typedef struct node { int num; struct node* link; } stud, *linklist;` 定义了一个名为`node`的结构体,其中包含一个整数`num`和一个指向`node`类型的指针`link`。`stud`是结构体的类型别名,而`linklist`则是指向`node`结构体的指针类型,用于表示链表。 3. `int n;` 是一个全局变量,用于存储链表中的节点数量。 4. `void print(linklist head)` 函数负责打印链表中的所有节点数值。通过遍历链表,逐个输出每个节点的`num`字段,最后用“ɣ”符号结束。 5. `void insert(linklist head)` 是链表插入操作的实现。首先,用户被要求输入要插入的位置(a)和值(b)。然后根据位置值,如果a为1,将新节点插入到链表头部;否则,从头节点开始按顺序找到第a个位置,插入新节点,并更新链表指针。函数调用`print()`函数更新显示链表。 6. `void del(linklist head)` 函数负责删除指定位置的节点。用户输入要删除的节点编号(a1),然后根据编号查找并删除相应节点。如果a1为1,则删除头节点;否则,从头节点开始搜索并移除第a1个节点。每次删除后,链表长度`n`减一,并更新链表显示。 这三个函数共同构建了一个简单的链表操作环境,通过它们可以实现动态管理整数节点。对于学习C++编程特别是链表概念的学生来说,这是一个实用且基础的练习项目。通过这个小程序,可以巩固对C++语法、数据结构和控制结构的理解。