栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

顺序表的基本操作实验(详细 易懂 C++)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

顺序表的基本操作实验(详细 易懂 C++)

编程实现顺序表的基本操作:建立顺序表,修改顺序表,插入顺序表,删除顺序表;

#include 
#define MAXSIZE 100
typedef struct
{
    int *elem;
    int length;
} Sqlist;

void InitList(Sqlist &L); //初始化顺序表
void ClearList(Sqlist &L); //清空顺序表
void PrintList(Sqlist L); //打印顺序表元素
void IsEmpty(Sqlist L); //判断顺序表L是否为空
void ListInsert(Sqlist &L,int i,int e); //插入第i个元素,i是位置,不是下标
void ListDelet(Sqlist &L,int i); //删除第i个元素,i是位置,不是下标
void ChangeList(Sqlist &L,int i,int e); //修改第I个元素的数据为e
void GetLength(Sqlist L); //获取顺序表长度GetLength(L);
void ListGet(Sqlist L,int i); //获取顺序表指定位置的元素
void BeforePoint(Sqlist L,int i);//获取顺序表指定位置元素的前驱
void AfterPoint(Sqlist L,int i); //获取顺序表指定位置元素的后驱

using namespace std;

int main()
{

    cout<<"1----清空线性表;n2----判断线性表是否为空;n3----求线性表长;n4----获取线性表指定位置元素;n5----求前驱;n6----求后继;n7----在指定位置插入元素;n8----删除指定位置元素;n9----显示线性表;n10----改变指定位置元素"<>n;
        if(n!=1 && n!=2 && n!=3 && n!=4 && n!=5 && n!=6 && n!=7 && n!=8 && n!=9 && n!=10){
            flag=false;
        }

        switch(n){
        case 1:
            ClearList(L);
            break;
        case 2:
            IsEmpty(L);
            break;
        case 3:
            GetLength(L);
            break;
        case 4:
            {
                cout<<"输入元素的位置:";
                int m;
                cin>>m;
                ListGet(L,m);
                break;

            }

        case 5:
            {
                cout<<"输入元素的位置:";
                int m;
                cin>>m;
                BeforePoint(L,m);
                break;
            }

        case 6:
            {
                cout<<"输入元素的位置:";
                int m;
                cin>>m;
                AfterPoint(L,m);
                break;
            }

        case 7:
            {
                cout<<"输入要插入元素的位置以及要插入的元素:";
                int m,m1;
                cin>>m>>m1;
                ListInsert(L,m,m1);
                break;
            }

        case 8:
            {
                cout<<"输入要删除元素的位置以及要删除的元素:";
                int m;
                cin>>m;
                ListDelet(L,m);
                break;
            }

        case 9:
            PrintList(L);
            break;
        case 10:
            {
                cout<<"输入要改变元素的位置,以及用来做替换的元素:";
                int m,m1;
                cin>>m>>m1;
                ChangeList(L,m,m1);
                break;
            }

        default:
            break;
        }

    }

    return 0;
}

//初始化顺序表
void InitList(Sqlist &L){
    L.elem=new int[MAXSIZE];
    L.length=0;
}

//清空顺序表
void ClearList(Sqlist &L){
    if(L.elem) delete[]L.elem;
    L.length=0;
    L.elem=NULL;
    cout<<"-----顺序表已清空"<L.length+1)
    {
        cout<<"-----位置不对,不存在第"<=i-1; j--)
        {
            L.elem[j+1]=L.elem[j];
        }

        cout<<"-----插入第"<L.length+1)
    {
        cout<<"-----位置不对,不存在第"<L.length)
    {
        cout<<"-----位置不对,不存在第"<L.length)
    {
        cout<<"-----第"<L.length)
    {
        cout<<"-----第"< 

运行结果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/780349.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号