首 页 行业热点 新车 试驾评测 养车用车 车型库
当前位置:首页线性表的基本操作实验报告

线性表的基本操作实验报告

2024-03-11 来源:好土汽车网
导读 线性表的基本操作实验报告
线性表的基本操作

1、 需求分析:

构建一个顺序表并实现顺序表的一些基本操作,例如创建列表,插入、删除元素,求元素的前驱等功能。

(1) 顺序表中数据元素为整形数字,范围属于int型。

(2) 输出部分操作提示以及功能操作所得到的数据(int型)。

(3) 顺序表建立、删除、插入、查询、判空、判满、查询前后驱等功能。 (4) 测试数据:

a)

b)

2、 概要设计:

用一个结构定义了一个数组,和数组内容的长度。主程序使用switch语句对将要进行

的操作进行选择,调用各个功能函数。 3、 实验源代码如下:

#include using namespace std; typedef struct {

int date[100]; int length;

}SeqList; SeqList L;

SeqList SeqListInit()//初始化顺序表 { }

void ListClear()/* 清空顺序表*/ { }

int ListLength()/* 求顺序表长度*/ { }

int ListEmpty()/* 检查顺序表是否为空*/ { }

int ListFull()/*检查顺序表是否为满*/ {

if(L.length==0) else

cout<<\"不为空\"<cout<<\"为空\"<cout<<\"你定义的顺序表的长度(长度小于)\"<>L.length;

cout<<\"顺序表里面储存数据为\"<int a; cin>>a; L.date[i]=a;

}

if(L.length==100) else

cout<<\"未满\"<cout<<\"为满\"<void ListTraverse()/* 遍历顺序表*/ { }

int ListGet(int i)/* 从顺序表中查找元素*/ { }

int ListLocate(int x) { }

void ListInsert(int i, int x) { }

void ListDelete(int i) {

if(i>=0&&ifor(i;iL.date[i-1]=L.date[i]; L.length--;

for(int m=0;i<=L.length-i;m++)

L.date[L.length]=L.date[L.length-1]; L.date[i-1]=x; L.length++; }

if(i>=0&&ifor(int i=0;iif(L.date[i]==x)

cout<if(i>=0&&icout<for(int i=0;icout<return 0;

}

int ListPrior(int e) { }

int ListNext(int e) {

if(e>=0&&ewhile(1) { int i;

cout<<\"1初始化顺序表\"<cout<<\"7从顺序表中查找元素\"<cout<<\"8从顺序表中查找与给定元素值相同的元素的位置\"<>i; switch (i) {

case 1:SeqListInit();break; case 2:ListClear();break; case 3:ListLength();break; case 4:ListEmpty();break; case 5:ListFull();break; case 6:ListTraverse();break; case 7:

{

int m;

cout<<\"请输入查找元素的位置\"<cout<return 0;

if(e-2>=0&&e-2cout< }

} }

} { } { } { } { } { }

cin>>m; ListGet(m);break;

case 8:

int m;

cout<<\"请输入查找元素\"<>m;

ListLocate(m);break;

case 9:

int x;

cout<<\"请输入插入的元素\"<>x;

ListInsert(i,x);break;

case 10:

int m;

cout<<\"请输入删除的元素\"<>m;

ListDelete(m);break;

case 11:

int m;

cout<<\"请输入元素的位置\"<>m;

ListPrior(m);break;

case 12:

int m;

cout<<\"请输入元素的位置\"<>m;

ListNext(m);break;

default:break;

4、

a) 遇见形参与实参搞混问题,改形参里面的内容并不影响其原本数据。多遇见几次这类似的

问题,以后就会顺利完成了。

b) 程序里面的语法结构问题,经过多次调试后便可以继续运行。

因篇幅问题不能全部显示,请点此查看更多更全内容