1 / 7
文档名称:

实验一顺序表的基本操作.docx

格式:docx   大小:96KB   页数:7页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实验一顺序表的基本操作.docx

上传人:260933426 2017/9/4 文件大小:96 KB

下载得到文件列表

实验一顺序表的基本操作.docx

文档介绍

文档介绍:南京信息工程大学实验(实****报告
实验(实****名称顺序表的基本操作实验(实****日期 2012/10/19 得分指导教师
系计软院专业网络工程年级 2011 班次 1 姓名管超学号 20111346032
顺序表的基本操作
实验目的
掌握线性表的顺序表基本操作:建立、插入、删除、查找、合并、打印等运算。
实验准备
奔腾2计算机或以上机型
Visual C++
实验内容
建立一个含n个数据元素的顺序表并输出该表中各元素的值及顺序表的长度。
往该顺序表中第i位置插入一个值为e的数据元素。
从该顺序表中第i位置删除一个数据元素,由e返回。
从该顺序表中查找一个值为e的数据元素,若找到则返回该数据元素的位置,否则返回“没有找到”。
实验代码
#include< >
#include< >
#include< >
#include< >
#define LIST_INIT_SIZE 10
#define INCREMENT 2
typedef struct
{
int *elem;
int length;
int listsize;
}SqList;
//初始化顺序表
void Init_List_Sq(SqList &L)
{
= (int *)malloc(LIST_INIT_SIZE*sizeof(int));
if (! )
{
printf(" Memory OVERFLOW!\n");
exit(0);
}
= 0;
= LIST_INIT_SIZE;
}
//在顺序表中插入e
void InsertList(SqList &L, int i, int &e)
{
int *newbase, *p, *q;

if (i<1 || i>+1)
{
printf(" Location ERROR!\n");
exit(0);
}
if ( >= )
{
newbase = (int *)realloc(, (+INCREMENT)*sizeof(int));

if (! newbase)
{
printf(" Memory OVERFLOW!\n");
exit(0);
}

= newbase;
+= INCREMENT;
}
q = &([i-1]);

for (p = &([-1]); p>=q; --p)
{
*(p+1) = *p;
}
*q = e;
++;
}
//在顺序表中删除e
void DeleteList(SqList &L, int i, int &e)
{
int *p, *q;
if ((i<1) || (i>))
{
printf(" Location