数据结构实训报告怎么写?
发布网友
发布时间:2022-04-21 18:59
我来回答
共1个回答
热心网友
时间:2023-09-15 21:25
(一)实验目的和要求
实验目的:熟练掌握线性表的基本操作在顺序存储结构上的实现。
实验要求:任选一种高级程序语言编写源程序,并调试通过,测试正确。
(二)实验主要内容
1.建立n个元素的顺序表SqList,实现顺序表的基本操作;
2.在SqList的元素i之后插入一个元素,实现顺序表插入的基本操作;
3.在sqList中删除指定位置i上的元素,实现顺序表删除的操作。
4.
(三)主要仪器设备
PC机,Windows XP操作平台,Visual C++
(四)实验原理
顺序表操作:定义一个顺序表类,该类包括顺序表的存储空间、存储容量和长度,以及构造、插入、删除、遍历等操作的方法
(五)实验步骤与调试分析:
顺序表操作:先构造有四个数据的顺序表,在第4个位置插入9,再读取并删除第3个元素。
(六)实验结果与分析:
顺序表操作:
(七)附录(源程序):
#include<iostream>
using namespace std;
const int LIST_INIT_SIZE=10;//顺序表初始长度
const int LISTINCREMENT=5;//顺序表长度增值
class SqList
{
int *L;//定义存储空间起始地址
int length;//顺序表当前长度
int listsize;//顺序表当前存储容量
bool flag;//设立标志值记录操作成败
public:
SqList(int v1,int v2,int v3,int v4);//构造函数构造并初始化顺序表
void ListInsert(int i,int e);//实现将e插入到顺序表中第i个位置
void ListDelete(int i,int &e);//实现删除顺序表第i个元素
void ListVisit();//实现顺序表的遍历
};
SqList::SqList(int v1,int v2,int v3,int v4)//构造并初始化顺序表
{
L=new int[LIST_INIT_SIZE];
if(!L)//分配失败
{
flag=false;
cout<<"ERROR"<<endl;
}
else//分配成功,进行初始化
{
*L=v1;
*(L+1)=v2;
*(L+2)=v3;
*(L+3)=v4;
length=4;
listsize=LIST_INIT_SIZE;
flag=true;
}
}
void SqList::ListInsert(int i,int e)//插入元素
{
int *p,*q;
int t;
if(i<1||i>length+1)cout<<"ERROR"<<endl;//插入位置错误
else
{
if(length==listsize)//空间不足,增加分配
{
p=new int[listsize+LISTINCREMENT];
if(!p)cout<<"ERROR"<<endl;//分配失败
else//分配成功,复制顺序表
{
for(t=0;t<length;t++)
*(p+t)=*(L+t);
q=L;L=p;p=q;
delete q;
listsize+=LISTINCREMENT;
}
}
for(t=length;t>=i;t--)
*(L+length)=*(L+length-1);
*(L+i-1)=e;
length++;//插入成功,表长加1
}
}
void SqList::ListDelete(int i,int &e)
{
if(i<1||i>length)cout<<"ERROR"<<endl;//删除位置错误
else
{
e=*(L+i-1);
while(i<length)
{
*(L+i-1)=*(L+i);
i++;
}
length--;//删除成功表长减1
}
}
void SqList::ListVisit()//遍历
{
int i;
for(i=0;i<length;i++)
cout<<" "<<*(L+i);
cout<<endl;
}
int main()
{
int e=0;
SqList list(2,3,4,5);
list.ListVisit();
list.ListInsert(4,9);
list.ListVisit();
list.ListDelete(3,e);
list.ListVisit();
cout<<"e="<<e<<endl;
return 0;
}
数据结构实训报告怎么写?
数据结构实习报告规范 实习报告的开头应给出题目、班级、姓名、学号和完成日期,并包括以下七个内容: 1、需求分析 以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?明确规定: (1)输入的形式和输入值的范围; (2)输出的形式; (3)程序所能达到的功能; (4)测试数据:包括正确地输...
2021大学生计算机实验总结报告
计算机网络课程的实验不同于以前做过的C语言上机实验和数据结构上机实验,后两者都是编程的,要求的是个人对基础知识的掌握和熟练的应用,简单地说就是一个人的战场。而计算机网络课程则是一门操作性很强的课程,很多时候它更要求我们注重团队之间的交流与配合,而不是独自完成。 第一次实验是双绞线的制作,通过这个实验...
大学实训心得怎么写
大学实训心得怎么写【篇1】 通过实训中心老师的课堂讲解与企业化标准的培训,使我加深了对自己专业的认识。从而确定自己以后的努力方向。要想在短暂的实训时间内,尽可能多的学到东西,就需要我们跟老师或同学进行很好的沟通,加深彼此的了解。只有我们跟老师多沟通,让老师更了解我们,才能跟真切的对我们进行培训工作。由此...
SQL销售管理数据库系统实训报告
首先说数据库,简单的说就是建表格,然后把一张一张的表格和在一起,成为一大堆的数据集合。他是依照某种数据结构组织起来并存放二级存储器中的数据集合,基本分为三个层次,物理数据层,概念数据层和逻辑数据层。不同层次间的联系是通过映射来转换的。大多数vb链接数据库都使用ado控件,他可以分为分为...
vbse实训目的
VBSE实训可以使学生掌握该脚本语言的基本语法、数据结构、函数等,提高学生的编程实际操作能力。通过实际的编程实践,学生能够更加熟练地运用VBSE来解决实际问题。2. 解决问题的能力 实训项目通常会设计一些实际问题,学生需要运用所学的VBSE知识,设计和实现相应的解决方案。这样的实践能力培养,有助于学生培养...
求一份C语言课程设计报告要求包括:系统需求分析,总体设计,详细设计,程序...
定义数据结构和各个功能子函数。 4. 程序的功能调试。 5. 完成系统总结报告以及使用说明书 六、进度安排 此次课程设计时间为两周,分四个阶段完成: 1. 分析设计阶段。指导教师应积极引导学生自主学习和钻研问题,明确设计要求,找出实现方法,按照需求分析、总体设计、详细设计这几个步骤进行。 2. 编码调试阶段:根据...
软件开发报告实例
网络安全技术、路由配置、WEB开发技术、网络安全与代理服务器应用、微软认证系统管理员证书(MCSD)、LINUX工程师认证考试训练。公共选修课 大学英语(二)、高等数学(二)、计算机应用基础,程序设计逻辑实训、微机原理、数据结构、操作系统、应用文写作、图形图像制作、Linux系统管理、软件设计新技术等课程。
C语言的实训项目发几个,谢谢
案例一 贪吃蛇游戏 案例二 计算器 案例三 黑白棋游戏 案例四 迷宫问题 案例五 扫地雷游戏 案例六 速算24 案例七 数据结构CAI系统 案例八 进程调度 案例九 存储管理分区分配算法 案例十 通讯录 案例十一 学生成绩管理 案例十二 工资管理 案例十三 图书借阅管理 案例十四 教师工作量计算 ...
什么是大数据专业?开设课程有哪些?
项目管理与数据治理:学习大数据项目的规划、实施和管理,以及数据治理和数据安全的相关知识。实践课程与项目:实验室实践:通过上机实验和编程练习,巩固学生对大数据技术的理解和应用能力。实训项目:参与实际的大数据项目,从需求分析、数据收集、处理、分析到报告撰写的全过程,提升学生的实践能力。选修课程...
c语言实训贪吃蛇报告书
6、 掌握书写程设计开发文档的能力(书写课程设计报告);二、内容与设计思想。(1).系统功能与分析(填写你所设计的菜单及流程图)。功能:进行贪食蛇游戏 分析:定义键盘方向键操作,随机数发生器产生食物,并分别利用函数判断贪食蛇的长度及游戏是否成功等.并能够输入游戏成绩.(2).数据结构 struct Food...