- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一 用指针处理链表 - 南京工业大学1431
实验一 用指针处理链表 - 南京工业大学1431
31.时间,就像海绵里的水,只要愿挤,总是有的
——鲁迅
实验一 用指针处理链表
一.实验目的
了解链表是一种重要的数据结构和动态进行存储分配的一种结构
学会使用链表进行数据操作
二. 实验内容
能够编写简单的建立链表、输出链表、链表插入和删除的程序,并进行数据输入、输出、插入和删除操作
三.实验环境需要仪器、设备
1. PC机一台,预装Win2K/Win98操作系统及Microsoft Visual C++ 6.0程序
四.实验线路及原理
根据所给流程图写出建立一个有5名学生数据的单向链表的函数;将链表中各结点的数据集资输出的函数;删除和插入某个结点的函数;最后写出主程序建立链表及执行上述各项操作
开辟一个新结点,并使p1,p2指向它
读入一个学生数据给p1所指的结点
Head=NULL,n=0
当读入的p1-num不是零
N=n+1
n
真
=1
假
Head=p1
(把p1所指的结点作为第一个结点)
P2-next=p1
(把p1所批的结点连接到表尾)
P2=p1(p2移到表尾)
再开辟一个新结点,使p1再指向它
读入一个学生数据给p1所指结点
表尾结点的指针变量置NULL
五.实验方法与步骤
自己设计后,经由指导教师审查后进行编译链接调试
六. 实验报告内容与要求
1. 画出程序流程图
2. 写出具体程序
七. 思考
1.查找表的工作方式是否与链表操作一致?为什么?
实验二 用二叉树实现类属查找表
一.实验目的
了解查找表是一种重要的数据抽象,是数据库应用和字处理的中心环节,是编译结构、操作系统设计、图形和数值方法以及其他应用的中心
二. 实验内容
用二叉树实现类属查找表,建立面向对象系统的体系结构和基于对象消息传递的框架
插入一个实体到表中;从表中删去一个实体;确定表中具体实体是否存在;显示有中所有实体
三.实验环境需要仪器、设备
仪器:PC机一台
四.实验线路及原理
用二叉树实现类属查找表,建立面向对象系统的体系结构和基于对象消息传递的框架
插入一个实体到表中;从表中删去一个实体;确定表中具体实体是否存在;显示有中所有实体
五.实验方法与步骤
1. 提供函数lessthan, equal和visittype的全局类型定义
指定lessthan是指向函数类型的指针,该函数返回一个整数并带有两个参数,每个均为一个字符地址
2. 定义一个类node,说明类search_table是它的一个友元
它的私有部分包含一个指向左或右子节点的指针,以及指向字符类型的指针
3. 指定类search_table中含有:数据root是一个指向类node的对象;数据size保存每个节点对象中数据存储的字节数;数据lt是一个指向类型lessthan函数的指针;eq是一个指向类型equal的函数指针;visit是一个指向类型visittype函数的指针
4. 类search_table的实现参见附录
5. 编写使用search_table抽象的测试程序
建立三张表,每张表使用一组不同的函数进行相等和不等的测试
第一张表使用last_name作为建表时的关键字;第二张表使用first_name作为建表时的关键字;第三张表使用age作为建表时的关键字
1. 测试程序参见附录
六. 实验报告内容与要求
1. 出程序流程图
2. 写出具体程序
七. 思考
1.能否用其它方式实现查找表?为什么?
附录1:
/*Cchain.cpp*/
#include Stdlib.h
#include stdio.h
#include iostream.h
#define NULL 0
#define LEN sizeof(struct student)
struct student
{
long num;
int score;
struct student *next;
};
int n;
struct student *creat()
{
struct student *head;
struct student *p1,*p2;
n=0;
p1=p2=(struct student *)malloc(LEN);
scanf(%d,%f,p1-num,p1-score);
head=NULL;
while(p1-num!=0)
{
n=n+1;
if(n==1)head=p1;
else p2-next=p1;
p2=p1;
p1=(struct student *)malloc(LEN);
cinp1-num;cinp1-score;
}
p
您可能关注的文档
最近下载
- 养瘦:能吃能睡又能瘦.pdf VIP
- 2024-2030全球按摩理疗机器人行业调研及趋势分析报告.docx
- 部编版六年级语文上册各单元知识点考点汇总.pdf VIP
- 2025年武汉东湖新技术开发区第二批公开招聘社区干事281人笔试参考题库附答案解析.docx VIP
- 通信行业英伟达GTC+2025硬件技术拆解(GenAl系列深度之52暨AI硬件深度之2):工程优化思维下,重点关注PCB、硅光、液冷等产业机会!-250326-申万宏源-20页.pdf VIP
- (完整版)循环伏安法.ppt VIP
- 第5课 推动高质量发展 课件(共33张PPT+1个内嵌视屏)2023-2024学年中职高教版(2023)中国特色社会主义.ppt.pptx VIP
- 2025-2030中国电线电缆行业市场深度调研及发展前景与发展策略研究报告.docx VIP
- JIS B 1044-2001 紧固件.电镀覆层(日语版).pdf VIP
- 呼吸学科病种大数据库的建设与管理.pptx VIP
文档评论(0)