数据结构城市链表.docxVIP

  • 98
  • 0
  • 约4.74千字
  • 约 16页
  • 2020-03-26 发布于江西
  • 举报
数据结构实验报告 ___09___级 __x____班 _xxxxx___年___xx___月__xx___日 姓名__xxxxx___ 学号 _xxxxxxx___ 得分_____________ 1.实验题目   将若干城市的信息,存入一个带头结点的单链表。结点中的城市信息包括: 城市名,城市的位置坐标。要求能够利用城市名和位置坐标进行有关查找、插 入、删除、更新等操作。 2.需求分析 本演示程序用 VC 编写,完成城市链表的生成,插入、删除, 更新等操 作。 输入的形式和输入值的范围:先创建一个城市链表需要输入五个城市的名称 及城市的位置坐标;再输入你需要对链表的操作功能号 1 输出城市链表信息、 2 查找、3 插入、4 删除、5 修改、6 输出与坐标 P 距离小于 D 的城市、0 退 出程序.查找城市时输入城市的名称;插入城市信息时输入城西的名称及它 的位置坐标;删除链表中的城市需输入城市的名称;修改城市链表是需输入 旧的城市名和新的城市名及新的位置坐标;操作 6 应输入中心城市的坐标及 一个距离范围。在所有输入中,操作功能号是整数,城市名是单个的字母, 位置坐标及距离是浮点型的数字。 输出的形式:黑框界面出现时就提示出入 5 个城市的数据域,之后每次操作 都会输出包含各个操作的功能表以供选择,输出城市链表是会输出城市名及 位置坐标,其它的操作每一步都会输出相应的提示信息。 程序所能达到的功能:完成城市链表的生成、插入、删除、查找及更新操作 ④ 测试数据:    A. 创建城市链表操作中依次输入 e 1.0 2.0←d 2.0 2.5←c 4.5 3.2←b 5.4 2.6←a 7.4 5.2 生成一个城市链表    B. 查找操作中输入城市名 c 返回这个城市的位置坐标 4.5 3.2 C. 插入操作中依次输入新的城市名及位置坐标 f,7.4,3.5,返回插入成 功提示    D. 删除操作中输入需删除的城市名 f ,返回删除成功提示 . 更新操作依次输入 e,g,2.8,5.7 返回更新成功提示 . 查找距离操作中依次输入中心坐标及距离 3.8,6.4,2.66 返回链表中 符合要求的城市信息 g,2.8,5.7 3.概要设计   1)为了实现上述程序功能,需要定义单链表的抽象数据类型:   ADT LinkList {    数据对象:D={ai|ai∈IntegerSet,i=0,1,2,…,n,n ≥0}    数据关系:R={ai,ai+1|ai,ai+1 ∈D}    基本操作:   City CreateList()   操作结果:构造一个城市链表 L,录入五个城市信息.   search()   初始条件:城市链表已存在 操作结果:查找是否有与输入值一致的城市名, 若存在,返回城市的位置坐标;   Insert()   初始条件:城市链表已存在   操作结果:将新的城市信息插入到链表中   Delete() 初始条件:城市链表已存在 操作结果:删除链表需要删除的城市信息 distance() 初始条件:城市链表已存在 操作结果:输出给定的一个距离范围内的所有城市信息 alter() 初始条件:城市链表已存在 操作结果:修改链表中的城市信息 print() 初始条件:城市链表已存在 操作结果:打印出城市链表中的所有城市信息   begin()   操作结果:在屏幕上显示操作功能号   2)本程序包含 8 个函数:   ① 主函数 main() 创建城市链表函数 City CreateList()  显示操作功能函数 void begin()   ④ 显示单链表城市信息函数 void print()   ⑤ 插入一个城市函数 void Insert() 删除一个城市信息函数 void Delete() 查找城市坐标函数 void search() 修改城市链表函数 void alter() ⑧ 查找一个固定距离范围内的城市 void distance()   各函数间关系如下: 4.详细设计 #includestdio.h #includemalloc.h #includemath.h #include stdlib.h #include string.h typedef int status; typedef struct data{ char Cname; float x; float y; }data; typedef struct CityNode{ data data; struct CityNode *next; }CityNode,*City; City L; City CreateList(){ //创建城市链表 int i; City p; L=(City )malloc(sizeof

文档评论(0)

1亿VIP精品文档

相关文档