ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:19.45KB ,
资源ID:4195015      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4195015.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(参考文档《软件技术基础》实验报告 1000字精选word文档 16页.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

参考文档《软件技术基础》实验报告 1000字精选word文档 16页.docx

1、参考文档软件技术基础实验报告 1000字精选word文档 16页本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!= 本文为word格式,下载后可方便编辑和修改! = 软件技术基础实验报告 (1000字)软件技术基础实验报告学 院:XXXXXXXXX班 级: XXXXXXX学 号:XXXXXXXXXX姓 名: XXXXXX指导老师: XXXXXX实验一 顺序表的操作班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:1、掌握顺序表结构的实现方式;2、掌握顺序表常用算法的实现;3、熟悉利用

2、顺序表解决问题的一般思路;4、参照给定的顺序表的程序样例,验证给出的顺序表的常见算法,领会顺序表结构的优点和不足。二、实验内容:1、设计一个静态数组存储结构的顺序表,要求编程实现如下任务:(1)建立一个顺序表,首先依次输人整数数据元素(个数根据需要键盘给定)。(2)删除指定位置的数据元素(指定元素位置通过键盘输入),再依次显示删除后的顺序表中的数据元素。(3)查找指定数据的数据元素(指定数据由键盘输入),若找到则显示位置,若没有找到则显示0。2、使用顺序表实现一个电话本的管理程序,电话本中的每条记录包括学号、姓名、手机号码和固定电话四项。要求实现菜单、初始化、添加、删除和显示等功能。三、实验结

3、果:四、实验中遇到的问题及解决方法:相关函数书上都有一样的或类似的,因此并未遇到什么问题。五、实验 心得体会 : 书上的例程是含有两个元素的,改为一个元素的时候花了一些时间。参考了书本,对书上的函数有了比较深刻的理解。附:部分源程序#includeconst int maxsize=100;struct stuint id;char name20;struct SeqListstu datamaxsize;int length;/主函数int main()SeqList L;L.length=0;stu s;cout请输入三个学生的学号、姓名:n; for(int i=0;is.ids.nam

4、e; Insert(&L,s); coutendl; Display(&L); int ID; coutID; Delete(&L,ID); coutendl; Display(&L); return 0; 实验二 链表的操作(一)班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:1、掌握单链表结构的实现方式;2、掌握单链表常用算法的实现。二、实验内容:1、设计一个链表,要求编程实现如下任务:(1)建立一个链表,首先依次输人整数数据元素(个数根据需要键盘给定)。(2)删除指定值的结点(指定值通过键盘输入),再依次显示删除后的

5、链表中的数据元素。(3)查找指定值的结点(指定数据由键盘输入),若找到则显示查找成功,若没有找到则显示查找失败。(4) 在第i个节点(i由键盘输入,i=0表示插入的结点作为第1个结点)之后插入一个元素为x的节点。三、实验结果:四、实验中遇到的问题及解决方法:没太大问题,最大的问题就是不熟悉。五、实验心得体会:根据书上的例程,遇到的问题还是与第一次实验差不多,把一个数组元素改为整数元素,很多地方都要改,做不到完全自己写出来。这次实验让我的对链表这种数据结构有了更深的了解,也对指针有了更加广泛的应用,对指针有了更的了解。 附:部分源程序#includestruct IntListint data;

6、IntList *next;/初始化函数void Init(IntList * head, int x )IntList *p=head;IntList *s = new IntList;while( p-next != NULL )p = p-next;s-data = x;s-next = p-next;p-next = s;/主函数void main()IntList * head;head = new IntList;head-next = NULL;int sel = 1,x,n;coutn;cout请输入数据n;for( int i=0 ;i x;Init(head,x);cout

7、输入的数据为:n;Display(head);while( sel != 0 )coutsel;switch ( sel ) 2、删除3、查找0、退出n; case 1: int w; coutxw; get_in(head,x,w); break; case 2: coutx; Delete(head,x); cout结果为:; Display(head); break; case 3: coutx; Search(head,x); break; case 0: break; 实验三 链表的操作(二)班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX第 X 周 星 期 X 、 XX

8、X 节 成 绩一、实验目的:1、熟悉利用线性链表解决问题的一般思路;2、参照给定的链表的程序样例,验证给出的链表的常见算法,了解单链表结构的优点和不足。二、实验内容:1、使用链表实现一个电话本的管理程序,电话本中的每条记录包括姓名和电话两项。要求实现菜单、初始化、添加、删除和显示等功能。三、实验结果:四、实验中遇到的问题及解决方法:链表初始化时所输入数据一直添加到头结点的下一个节点,不能按照输入的顺序建立链表 。解决办法:在有数据添加到链表时,用一个while语句判断头结点指向的第一个节点是否为空,若为空,则直接添加,若不为空,则向后寻找,直到节点的指针的指向为空。然后添加数据,将新的地址赋值

9、后指向为空的指针。 五、实验心得体会:在对链表进行操作时,一定要注意所定义的指针的位置,不然很容易产生错误操作。在插入数据时一定要注意链表的长度。若插入的位置大于链表的长度则会发生错误。实验四 栈的操作班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:掌握栈的的定义和运算,了解栈的应用。二、实验内容:1、堆栈的测试和应用。要求:设计一个主函数实现对顺序堆栈代码进行测试。测试方法为:依次把数据元素1,3,5,7,9入栈,然后出栈堆栈中的数据元素并在屏幕上显示。三、实验结果:四、实验中遇到的问题及解决方法:第一次把程序用类的方式

10、来写,对类不熟悉,一开始写的很繁琐,后请教老师并修改后可运行。五、实验心得体会:通过这次实验,学会了用类的方式写程序。而且明白了,用类写程序不是让生搬硬套,而是要运用类把程序的形式化到最简。附:部分源程序#includestruct SqStackchar* data;int top;int stacksize;/栈的初始化void InitStack(SqStack &s,int size)if(size 0)s.stacksize = size;s.top = -1;s.data = new charsize;else cout栈的初始化长度失败;/主函数void main()SqStac

11、k T;int number10,i,n;InitStack(T,10);coutn; cout请输入数据n;for(i=0;inumberi;Push( T , numberi ) ;cout 输出结果n;for( i = 0 ; i n ; i+ )Pop(T , numberi ) ;cout numberit;coutn;实验五 队列的操作班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX 第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:掌握队列的定义及其运算,了解队列的应用。二、实验内容:1、队列测试和应用。要求:设计一个主函数对循环队列代码进行测试。测试方法为

12、:依次把数据元素2,4,6,8,10入队,然后出队中的数据元素并在屏幕上显示。三、实验结果:四、实验中遇到的问题及解决方法:删除最后一个元素后,在进行入队出队后发生错误。解决方法:在删除最后一个元素后,修改尾指针。将头指针的值赋给尾指针。五、实验心得体会:队列是操作受限的线性表,其基本运算方法与顺序表和链表运算方法基本相同,在应用队列的数据结构时,应定要注意队列的先进先出这一特点。附:部分源程序#includeconst int MAX=100;class SqQueuepublic:int dataMAX;int front;int rear;/入队列void EnQueue(int x)i

13、f(rear+1)%MAX=front)cout队列已满;elserear=(rear+1)%MAX;datarear=x;/主函数int main()SqQueue Q1;Q0.front= Q0.rear=0;int t5;int i;for(i=0;i5;i+)coutti;for(i=0;i5;i+) Q0.EnQueue(ti);coutQ0.DeQueue(Q0) ;return 0;实验六 二叉树的生成和遍历班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:1、熟悉二叉树节点的定义和生成方式;2、熟悉二叉树链式

14、结构的生成方式;3、掌握二叉树遍历算法的实现。三、实验内容:1设计实现二叉树的建立及遍历算法,要求:(1)编写创建二叉链式存储结构的二叉树程序并输出。(2)编写递归实现二叉树的先序、中序、后序遍历算法。(3)编写主函数测试以上二叉树的创建和遍历函数。2. 假设二叉树采用链式存储结构进行存储,编写程序实现二叉树的所有叶子结点的统计并输出统计个数。三、实验结果:四、实验中遇到的问题及解决方法:在编二叉树时,刚开始没有设置0作为创建二叉树的结束,造成了所创建的二叉树始终不能结束。最后把0做为结束标志,解决了这个问题。五、实验心得体会:通过这次实验,我知道了在编写二叉树是要设置一个数0表示创建输的完成

15、,以及在进行遍历的是要从左边遍历,然后再是右边。要注意保存结点指针,这样可以访问上一个数据,位访问右边的数据提供了方便。 实验七 实现查找算法班 级 XXXXX 学 号 XXXXXXX 姓 名 XXXX第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:掌握各种查找算法的特点,测试并验证查找常见算法。二、实验内容:1. 建立有序表,采用折半查找实现某一已知的关键字的查找。2利用折半查找算法在一个有序表中插入一个元素,并保持表的有序性。三、实验结果:四、实验中遇到的问题及解决方法:一开始先写好了二分查找的程序,在这个基础上一直写不出来在有序表中插入一个元素,并保持表的有序性 ,后来通过请

16、教同学,才恍然大悟,应该先写插入的程序,再将查找改成二分法。五、实验心得体会:通过这次实验,我知道了,在编写折半查找时在设置查找区间初值时,要把下边界low=0,上边界high=length-1。附:部分源程序#includestruct Listint data20,length;void Insert_1( List *L, int x )/顺序表的初始化函数int j = L-length-1;L-dataj+1 = x;L-length+;void main()/主程序List L;/定义一个顺序表 L.length=0; int sel=1,x;/sel 为循环标志数 cout请输入

17、10个数据n; for(int i=0 ; ix; Insert_1(&L,x); cout输入的数据为:n; Display(&L); paixu(&L); cout排序后的数据n; Display(&L);while(sel != 0)cout请选择要进行的操作:1、查找数据2、插入数据 sel; switch( sel ) case 1: coutx; cout要查找的数据在第 Search(&L,x) 位n; break; case 2: coutx; if( Search(&L,x) != 0 ) for( i = L.length-1 ; i Search(&L,x)-1; i-

18、) L.datai+1 = L.datai; L.datai+1 = x; L.length+; elsefor( i = L.length-1 ; L.datai = x ; i-)L.datai+1 = L.datai;L.datai+1 = x;L.length+;cout插入后的数据n; Display( &L );实验八 排序 综合 实验 班 级 号 姓 名第 X 周 星 期 X 、 XXX 节 成 绩一、实验目的:参照各种排序算法程序样例,验证给出的排序常见算法。二、实验内容:输入一组关键字序列分别实现下列排序,并将上述几种排序的算法编写成菜单,根据输入的数字不同执行对应的排序算法

19、(任选两种排序方法实现)。1、直接插入排序。2、希尔排序。3、冒泡排序。4、直接选择排序。5、快速排序。6、堆排序。7、归并排序。8、基数排序。三、实验结果:四、实验中遇到的问题及解决方法:没有什么问题,就是快速排序写不来。因为是任选两种,所以没有继续。五、实验心得体会:排序是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。在具体操作中对这学期所学的数据结构和以前学的语言的理论知识得到巩固,也发现自己的不足之处,在以后的上机中应更加注意,通过实际操作,学会数据结构书中程序的编写方法和基本步骤,开发了自己的逻辑思维能力,培养了分析问

20、题、解决问题的能力。 附:部分源程序 #includeconst int maxsize=100;void main() int i,n,select;int vmaxsize;coutn;cout请输入数据:n;for(i=0;ivi;while(select!=0)coutselect;switch (select) case 1:cout直接插入排序n;InsertSort(v,n);for(i=0;in;i+)coutvin;break;case 2:cout冒泡排序n;Bub(v,n);for(i=0;in;i+)coutvin;break;case 3:cout选择排序n;SS(v,n);for(i=0;in;i+)coutvin;break;case 0 :cout使用结束;break; 荐 计算机上机实验内容及实验报告要求 荐 构建学校德育管理与评价体系的实验报告 荐 化学实验报告格式 荐 大学物理实验课程设计实验报告 荐 电路实验报告要求

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1