数据结构城市链表.doc

数据结构城市链表.doc

ID:51835529

大小:148.50 KB

页数:10页

时间:2020-03-16

数据结构城市链表.doc_第1页
数据结构城市链表.doc_第2页
数据结构城市链表.doc_第3页
数据结构城市链表.doc_第4页
数据结构城市链表.doc_第5页
资源描述:

《数据结构城市链表.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据结构实验报告___09___级__x____班_xxxxx___年___xx___月__xx___日姓名__xxxxx___学号_xxxxxxx___得分_____________1.实验题目  将若干城市的信息,存入一个带头结点的单链表。结点中的城市信息包括:城市名,城市的位置坐标。要求能够利用城市名和位置坐标进行有关查找、插入、删除、更新等操作。2.需求分析本演示程序用VC编写,完成城市链表的生成,插入、删除, 更新等操作。①输入的形式和输入值的范围:先创建一个城市链表需要输入五个城市的名称及城市的位置坐标;再输入你需要对

2、链表的操作功能号1输出城市链表信息、2查找、3插入、4删除、5修改、6输出与坐标P距离小于D的城市、0退出程序.查找城市时输入城市的名称;插入城市信息时输入城西的名称及它的位置坐标;删除链表中的城市需输入城市的名称;修改城市链表是需输入旧的城市名和新的城市名及新的位置坐标;操作6应输入中心城市的坐标及一个距离范围。在所有输入中,操作功能号是整数,城市名是单个的字母,位置坐标及距离是浮点型的数字。②输出的形式:黑框界面出现时就提示出入5个城市的数据域,之后每次操作都会输出包含各个操作的功能表以供选择,输出城市链表是会输出城市名及位置

3、坐标,其它的操作每一步都会输出相应的提示信息。③程序所能达到的功能:完成城市链表的生成、插入、删除、查找及更新操作④测试数据:   A.创建城市链表操作中依次输入e1.02.0←d2.02.5←c4.53.2←b5.42.6←a7.45.2生成一个城市链表   B.查找操作中输入城市名c返回这个城市的位置坐标4.53.2C.插入操作中依次输入新的城市名及位置坐标f,7.4,3.5,返回插入成功提示  D.删除操作中输入需删除的城市名f,返回删除成功提示E.更新操作依次输入e,g,2.8,5.7返回更新成功提示F.查找距离操作中依次

4、输入中心坐标及距离3.8,6.4,2.66返回链表中符合要求的城市信息g,2.8,5.73.概要设计  1)为了实现上述程序功能,需要定义单链表的抽象数据类型:  ADTLinkList{   数据对象:D={ai

5、ai∈IntegerSet,i=0,1,2,…,n,n≥0}   数据关系:R={

6、ai,ai+1∈D}   基本操作:  CityCreateList()  操作结果:构造一个城市链表L,录入五个城市信息.  search()  初始条件:城市链表已存在操作结果:查找是否有与输入值一致的城市名,若存

7、在,返回城市的位置坐标;  Insert()  初始条件:城市链表已存在  操作结果:将新的城市信息插入到链表中 Delete()初始条件:城市链表已存在操作结果:删除链表需要删除的城市信息distance()初始条件:城市链表已存在操作结果:输出给定的一个距离范围内的所有城市信息alter()初始条件:城市链表已存在操作结果:修改链表中的城市信息print()初始条件:城市链表已存在操作结果:打印出城市链表中的所有城市信息  begin()  操作结果:在屏幕上显示操作功能号  2)本程序包含8个函数:  ①主函数main()②

8、创建城市链表函数CityCreateList() ③显示操作功能函数voidbegin()  ④显示单链表城市信息函数voidprint()  ⑤插入一个城市函数voidInsert()⑥删除一个城市信息函数voidDelete()⑦查找城市坐标函数voidsearch()⑧修改城市链表函数voidalter()⑧查找一个固定距离范围内的城市voiddistance()  各函数间关系如下:4.详细设计#include#include#include#include

9、b.h>#includetypedefintstatus;typedefstructdata{charCname;floatx;floaty;}data;typedefstructCityNode{datadata;structCityNode*next;}CityNode,*City;CityL;CityCreateList(){//创建城市链表inti;Cityp;L=(City)malloc(sizeof(CityNode));L->next=NULL;printf("请输入5个城市的数据域:");f

10、or(i=0;i<5;i++){p=(City)malloc(sizeof(CityNode));scanf("%c%f%f",&p->data.Cname,&p->data.x,&p->data.y);getchar();p->next=L->n

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。