肇庆学院计算机学院/软件学院
实验报告
专业_软件工程_班级14软件2班姓名_黎福喜_学号201424133225课程名称数据结构
学年2015—2016 学期 1R / 2□课程类别专业必修R 限选□任选□实践□
评分: 批阅老师: 2015年月日
实验1 线性表的基本操作
实验目的
掌握线性表的基本一算。
掌握顺序存储的概念,学会对顺序存储数据结构进行操作。
加深对顺序存储数据结构的理解,逐步培养解决实际问题的编程能力。
实验内容
编写线性表举报操作函数
InitList(LIST *L,int ms)初始化线性表;
InsertList(LIST *L,int item,int rc)向线性表指定位置插入元素;
DeleteList1(LIST *L,int item)删除指定元素的线性表记录;
DeleteList2(LIST *L,int rc)删除删除指定位置的线性表记录;
FindList(LIST *L,int item)查找线性表中的元素;
OutputList(LIST *L)输出线性表元素。
调用上述函数实现下列操作:
初始化线性表;
调用插入函数建立一个线性表;
在线性表中寻找指定的元素;
在线性表中删除指定值的元素;
在线性表中删除指定位置的元素;
遍历并输出线性表。
实验结果
流程图
主菜单
返回主菜单
退出
按值删除元素
按位置删除元素
添加元素
查找元素
显示线性表
2、程序运行主要结果截图
程序源代码
#include<>
#include<>
#include<>
struct LinearList
{
int *list;
int size;
int Maxsize;
};
typedef struct LinearList LIST;
void InitList(LIST *L,int ms)//线性表初始化
{
if((L->list=(int *)malloc(ms*sizeof(int)))==NULL)
{
printf("内存申请错误!\n");
exit(1);
}
L->size=0;
L->Maxsize=ms;
}
int InsertList(LIST *L,int item,int rc)//插入
//item-记录值;rc-插入位置
{
int i;
if(L->size==L->Maxsize)
return -1;
if(rc<0)
rc=0;
if(rc>L->size)
rc=L->size;
for(i=L->size-1;i>=rc;i--)
L->list[i+1]=L->list[i];
L->list[rc]=item;
L->size++;
return 0;
}
void OutputList(LIST *L)//输出
{
int i;
for(i=0;i<L->size;i++)
printf("%d",L->list[i]);
printf("\n");
}
int DeleteList1(LIST
数据结构实验报告 来自淘豆网www.taodocs.com转载请标明出处.