- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
师大学
实验报告
课 程:数据结构实验序号: 1班级:2016
课 程:数据结构
实验序号: 1
姓名: 明达
学 号:201611030230
实验日期: 9.17题目:顺序表的建立和运算
实验日期: 9.17
、实验目的和要求
(1) 熟悉C语言的上机环境,进一步掌握 C语言的结构特点。
(2) 掌握线性表的顺序存储结构的定义及基本运算
、实验环境
Windows10, Visual Studio 2017
、实验容及实施
实验容
1、建立一个顺序表,输入 n个元素并输出;
、查找线性表中的最大元素并输出;
、在线性表的第i个元素前插入一个正整数 x;
、删除线性表中的第j个元素;
、将线性表中的元素按升序排列;
【程序流程图】
cout
cout 您构建的顺序表为:vv endl; // 提示
cout
cout 您构建的顺序表为:vv endl; // 提示
【程序】
#includestdio.h #includeiostream using namespace std;
#define MAXSIZE 100
#define OK 1
#define ERROR 0
#define OVERFLOW -2
typedef struct { //
int data[MAXSIZE];
int length; //
}SqList;
int InitList(SqList L) //
{
L.length = 0; //
return OK;
}
void ShowList(SqList L)
{
定义顺序表结构
// 存储空间的基地址;
当前表长
初始化顺序表
当前长度为0
// 显示顺序表
int i;
cout
cout 请问您要在第__个数字前插入新数字? ; // 提示
cout
cout 请问您要在第__个数字前插入新数字? ; // 提示
for (i = 0; i L.l ength; i++)
{
cout L.data[i] ;
} // 依次输岀顺序表
cout endl;
}
void FindMax(SqList L) // 找最大值
{
cout 该组数据的最大值为: endl;
int m = L.data[0];
int i;
for (i = 0; i L.length; i++) // 依次比较两个数的大小,取大者赋给
{
if (m L.data[i])
{
m = L.data[i];
}
}
cout m endl; // 输出最大值
}
int InsertList(SqList L) // 插入新数字
{
int x, e;
cin x; // 输入要插入的位置
cout
cout 请问您要删除第 _个元素? ; // 提示
cout
cout 请问您要删除第 _个元素? ; // 提示
if (x1 || xL.length)
{
cout 该值错! endl;
return ERROR;
} // 位置错误提示
if (L.length == MAXSIZE)
{
cout 该顺序表空间已满,不能再添加数值! endl;
return OVERFLOW;
} // 存储空间已满提示
cout 您要插入的数字为: endl;
cin e; // 输入要插入的数字
for (int j = L.l ength - 1; j = x - 1; j__)
L.data[j + 1] = L.data[j]; // 从要插入的位置起,后面数据依次向后移动
L.data[x - 1] = e; // 插入新数字
L.length++; // 表长 +1
cout 插入新数字之后的顺序表为: endl; // 提示
ShowList(L); // 输出新表
return OK;
int DeleteElem(SqList L) // 删除某个元素
{
int x;
cin
cin x; //
输入要删除第几个数字
cout
cout 请输入下列选项前的字母对该数组进行相应操作。 endl
if (x1 || xL.length)
{
cout 该值错! endl;
return ERROR;
} // 错误提示
for (int j = x - 1; j L.l ength - 1; j++)
L.data[j] = L.data[j + 1]; // 从该位置起,以后数字依次向前移动
L.length--; // 表长-1
cout 删除数字之后的顺序表为: endl; // 提示
ShowList(L); // 输出新表
return OK;
}
void UpRankLis
您可能关注的文档
- 最新英语四级写作范文模板50篇及翻译.docx
- 最新义务教育英语课程标准二级词汇量.docx
- 最新移动通信技术.docx
- 最新演讲比赛方案.docx
- 最新压密注浆施工专项方案.docx
- 最新养生保健品网络营销现状与对策.docx
- 最新医疗质量管理与持续改进记录本样本模板.docx
- 最新医用耗材及检验试剂采购管理.docx
- 最新学前教育毕业论文.docx
- 最新信阳市水稻中后期主要病虫害发生趋势.docx
- 湖北省2019-2020学年高一下学期期末联考语文试卷.pdf
- 湖北巴东县京信友谊中学2022-2023学年八年级上学期期末历史试卷.pdf
- 湖北省“荆、荆、襄、宜“四地七校联盟2020-2021学年高二上学期期中英语试卷.pdf
- 2025版流行性感冒诊疗方案试题(急诊科)测试卷及答案.docx
- 湖北省鄂州市鄂城区2020-2021学年八年级上学期期中英语试卷.pdf
- 湖北省鄂州市华容区2022-2023学年八年级上学期期末历史试卷.pdf
- 湖北省鄂州市华容区2022-2023学年八年级上学期期末教学质量监测数学试卷.pdf
- 湖北省鄂州市华容区2022-2023学年八年级上学期期末生物试卷.pdf
- 湖北省华中师范大学第一附属中学2022~2023学年高三上学期期中生物试卷.pdf
- 湖北省黄冈市2022-2023学年八年级上学期期末历史试卷.pdf
最近下载
- RCA根本原因分析法在护理不良事件中的应用解析.docx VIP
- 中建-商务经理项目实操手册(73页).docx
- 云南2025年春季高考信息技术真题-试题.pdf VIP
- 大学语文01秋天的况味教程.ppt VIP
- 考研题库 《数据结构教程》(C++语言描述)配套题库(考研真题+课后习题+章节题库+模拟试题) (3).docx VIP
- 交通运输信息化“十五五”发展规划.docx
- 2025年人教版8年级数学下册《一次函数》同步测试试卷(解析版含答案).docx VIP
- 2025年高中政治培训材料:议题式教学与实例分析.pdf VIP
- 《秋天的况味》课件.ppt VIP
- 广东2025年10月自考10177设计基础试题及答案.docx VIP
原创力文档


文档评论(0)