//Linear Table On On Link List Structure
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define MAXSIZE 100
#define FALSE 0
#define TRUE 1
typedef int ElemType; //数据元素类型定义
typedef struct node //线性表链式存储结构的定义
{
ElemType data;
struct node*next;
}LNode,*LinkList;
//注意:下面的链表都采用带头节点的结构
LinkList CreateLinkList(int n); //带n个节点的链表,返回链表的头指针
void PrintLinkList(LinkList H);//以(a1,a2,...,an)格式输出链表
void EmptyLinkList(LinkList H); //把链表H清空
int LengthLinkList(LinkList H); //返回链表H的长度
LNode* GetLinkList(LinkList H,int i); //查找第i节点,找到返回指向第i个节点指针,否则返回NULL
LNode* LocateLinkList(LinkList H, ElemType x); //查找元素x的位置,找到返回指向该结点指针,否则返回NULL
int InsertLinkList(LinkList H, int i, ElemType x);//在链表H的第i个位置上插入值为x的元素,成功返回TRUE,否则FALSE
int DeleteLinkList(LinkList H, int i);//删除单链表H上的第i个节点
int main()
{
LinkList H; //定义一个链表指针
//生成菜单
char sel=' ';
while(sel!='0')
{
printf("------线性表(链式存储结构)演示系统-------\n");
printf(" 版本:1.0 作者:xxx 日期:xxxx-xx-xx\n");
printf("------------------------------------------\n");
printf(" 1.创建线性表\n");
printf(" 2.查找元素位置\n");
printf(" 3.按位置查找元素\n");
printf(" 4.插入一个元素\n");
printf(" 5.删除一个元素\n");
printf(" 6.打印线性表\n");
printf(" 7.打印线表长度\n");
printf(" 8.清空线性表\n");
printf(" 9.清空屏幕\n");
printf(" 0.退出系统\n")
数据结构之线性表的基本操作,用菜单实现(创建线性表,查找元素位置,按位置查找元素,插入一个元素,删除一个元素,打印线性表,打印线性表长度,清空线性表,清空屏幕,退出系统)
最新推荐文章于 2024-05-13 03:26:58 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)