c语言课程设计-导游系统

更新时间:2024-04-22 19:48:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《数据结构》

课程设计报告

西湖导游系统

学号: 姓名: 专业班级: 日期:

信息科学与工程系

I 《数据结构》课程设计报告

目录

1课程设计的目的 ................................................................................................................................................... 1

1.1课程设计题目 ............................................................................................................................................ 1 1.2课程设计目的 ............................................................................................................................................ 1 2课程设计的内容 ................................................................................................................................................... 1

2.1 题目分析 ................................................................................................................................................... 1 2.2 系统程序模块设计 ................................................................................................................................... 1

2.2.1景点信息查询 ................................................................................................................................. 1 2.2.2 景点地图 ........................................................................................................................................ 1 2.2.3景点最短路径查询 ......................................................................................................................... 1 2.2.4退出系统 ......................................................................................................................................... 1

3景点信息查询及求最短路径问题的实现 ........................................................................................................... 1

3.1景点信息查询及求最短路径系统涉及的物理结构 ................................................................................ 1

3.1.1 图的逻辑结构和物理结构 ............................................................................................................ 1 3.1.2 Floyd的逻辑结构和物理结构 ....................................................................................................... 2 3.2景点信息查询及求最短路径系统主要模块的设计 ................................................................................ 2

3.2.1 景点基本信息和路径的定义 ........................................................................................................ 2 3.2.2 Floyd求最短路径的实现 ............................................................................................................... 5 3.2.3选择函数 ......................................................................................................................................... 8

4西湖导游系统的测试及运行效果 ....................................................................................................................... 9

4.1 主界面 ....................................................................................................................................................... 9 4.2 景点信息查询 ........................................................................................................................................... 9 4.3地图显示 .................................................................................................................................................... 9 4.4 最短路径查询 ........................................................................................................................................... 9 4.5功能选项选择错误 .................................................................................................................................. 10 4.6查询最短路径景点输入错误 .................................................................................................................. 10 5系统设计遇到的问题及解决方案 ..................................................................................................................... 11 6总结与收获 ......................................................................................................................................................... 12 附西湖导游系统程序源代码 ................................................................................................................................ 12

I

《数据结构》课程设计报告

1课程设计的目的

1.1课程设计题目 西湖导游系统 1.2课程设计目的

这个课程设计是为了方便的查询景点信息,找出景点之间的最短路径,其中把景点信息用图的数组存储,求两点之间的最短路径用Floyd算法。正确分析题目中的数据涉及的数据结构,并将数据结构的逻辑结构、物理结构及其算法应用于解决实际问题,即理论与实际结合起来,提高编写程序的能力。掌握模块化程序设计方法以及程序的调试方法和技巧。

2课程设计的内容

2.1 题目分析

这次的课程设计中需要把多个景点的信息存储,所以用了图的数组法来存储景点信息, 求最短路径问题上,Floyd是解决任意两点间的最短路径的一种算法,可以正确处理有向图或负权的最短路径问题。

2.2 系统程序模块设计 2.2.1景点信息查询

用户在选择此功能模块后,按照屏幕上方提示的景点名称及其对应的编号,要求用户输入想要查询的景点的编号,回车后系统将在已存储的景点中进行匹配,若该景点信息尚未存储则将提示错误;若找到对应信息则系统将输出景点信息,显示于幕上方;

2.2.2 景点地图 显示景点的分布情况。 2.2.3景点最短路径查询

用户在选择此功能模块后,按照屏幕上方提示的景点名称及其对应的编号,要求用户输入起点和终点的编号,系统将在已存储的景点中进行匹配,若未找到所需查询的景点编号,系统将提示错误并要求用户再次输入。若输入信息合法,则回车后系统将给出最短路径,显示于屏幕上方;

2.2.4退出系统

选择此功能模块,系统将自动退出。

3景点信息查询及求最短路径问题的实现

3.1景点信息查询及求最短路径系统涉及的物理结构 3.1.1 图的逻辑结构和物理结构

1

《数据结构》课程设计报告

因为在这次的课程设计中,景点的个数是固定的,再者需要求最短路径的问题,所以需要用图的数组法来保存景点的信息。以此方便景点信息的调用和之后最短路径的调用和计算。

3.1.2 Floyd的逻辑结构和物理结构

要求的是两个地点之间的最短路径,是多源的,所以用Floyd算法,它是解决任意两点间的最短路径的一种算法,可以正确处理有向图或负权的最短路径问题。

3.2景点信息查询及求最短路径系统主要模块的设计 3.2.1 景点基本信息和路径的定义 typedefstruct {

char name[30];//景点名称 char number[10];//景点序号 char introduce[200];//景点介绍 }Elemtype;

typedefstruct {

intnum; //景点编号 Elemtype data; //景点信息 }View; //定义景点

typedefstruct {

View view[MaxViewNum];//存放顶点的一维数组,数组第零单元没有用上

unsigned int length[MaxViewNum][MaxViewNum]; //存放路径长度 if(shortest[i][j]!=MGr.length[i][j])

intm,n; }MGraph;

MGraphMGr; //全局变量,定义MGr为MGraph类型

int shortest[MaxViewNum][MaxViewNum]; //定义全局变量存贮最小路径 int path[MaxViewNum][MaxViewNum]; //定义存贮路径 view()//十个景点的具体信息

2

《数据结构》课程设计报告

{ inti,j;

MGr.view[1].num=1;

strcpy(MGr.view[1].data.name,\苏堤春晓\

strcpy(MGr.view[1].data.introduce,\苏堤春晓俗称苏公堤,为西湖十景之首。是一条贯穿西湖南北风景区的林荫大堤,苏堤南起南屏山麓,北到栖霞岭下,全长近三公里,堤宽平均36米。\

MGr.view[2].num=2;

strcpy(MGr.view[2].data.name,\曲院风荷\

strcpy(MGr.view[2].data.introduce,\曲院风荷位于西湖西侧,岳飞庙前面。南宋时,此有一座官家酿酒的作坊,取金沙涧的溪水造曲酒,闻名国内。附近的池塘种有菱荷,每当夏日风起,酒香荷香沁人心脾,因名“曲院风荷”。\

MGr.view[3].num=3;

strcpy(MGr.view[3].data.name,\平湖秋月\

strcpy(MGr.view[3].data.introduce,\平湖秋月,西湖十景之一,位于白堤西端,孤山南麓,濒临外西湖。凭临湖水,登楼眺望秋月,在恬静中感西湖的浩淼,洗涤烦躁的心境,是她的神韵所在。\

MGr.view[4].num=4;

strcpy(MGr.view[4].data.name,\断桥残雪\

strcpy(MGr.view[4].data.introduce,\断桥的石桥拱面无遮无拦,在阳光下冰雪消融,露出了斑驳的桥栏,而桥的两端还在皑皑白雪的覆盖下。依稀可辩的石桥身似隐似现,而涵洞中的白雪奕奕生光,桥面灰褐形成反差,远望去似断非断,故称断桥。\

MGr.view[5].num=5;

strcpy(MGr.view[5].data.name,\柳浪闻莺\

strcpy(MGr.view[5].data.introduce,\南宋时,这里是京城最大的御花园,称聚景园。当时园内有会芳殿和三堂、九亭,以及柳浪桥和学士桥。清代恢复柳浪闻莺旧景。有柳洲之名。其间黄莺飞舞,竞相啼鸣,故有“柳浪闻莺”之称。\

3

《数据结构》课程设计报告

MGr.view[6].num=6;

strcpy(MGr.view[6].data.name,\花巷观鱼\

strcpy(MGr.view[6].data.introduce,\红鱼池位于园中部偏南处,是全园游赏的中心区域。池岸曲折自然,池中堆土成岛,池上架设曲桥,倚桥栏俯看,数千尾金鳞红鱼结队往来,泼刺戏水。\

MGr.view[7].num=7;

strcpy(MGr.view[7].data.name,\雷锋夕照\

strcpy(MGr.view[7].data.introduce,\位于西湖湖南、净慈寺前的夕照山上,因晚霞镀塔,佛光普照而闻名。\

MGr.view[8].num=8;

strcpy(MGr.view[8].data.name,\双峰插云\

strcpy(MGr.view[8].data.introduce,\巍巍天目山东走,其余脉的一支,遇西湖而分弛南山、北山,形成环抱状的名胜景区,两山之巅既南高峰和北高峰。\

MGr.view[9].num=9;

strcpy(MGr.view[9].data.name,\南屏晚钟\

strcpy(MGr.view[9].data.introduce,\即指南屏山净慈寺傍晚的钟声,南屏山在杭州西湖南岸、玉皇山北,九曜山东。主峰高百米,林木繁茂,石壁如屏,北麓山脚下是净慈寺,傍晚钟声清越悠扬。\

MGr.view[10].num=10;

strcpy(MGr.view[10].data.name,\三潭映月\

strcpy(MGr.view[10].data.introduce,\岸上金桂婆娑,柳绿花明,与雕栏画栋的建筑相映成趣。具有湖中有岛,岛中有湖,园中有园,曲回多变,步移景新的江南水上庭园的艺术特色。\

for(i=1;i<=N;i++) {

for(j=1;j<=N;j++)

{

MGr.length[i][j]=MaxRoad;

} }

for(i=1;i<=N;i++)

4

《数据结构》课程设计报告

{ }

MGr.length[1][2]=MGr.length[2][1]=2;//设定已有路径的长度 MGr.length[2][3]=MGr.length[3][2]=5; MGr.length[2][8]=MGr.length[8][2]=3; MGr.length[2][9]=MGr.length[9][2]=4; MGr.length[2][6]=MGr.length[6][2]=3; MGr.length[6][4]=MGr.length[4][6]=6; MGr.length[6][7]=MGr.length[7][6]=5; MGr.length[3][6]=MGr.length[6][3]=10; MGr.length[5][7]=MGr.length[7][5]=7; MGr.length[3][10]=MGr.length[10][3]=8; MGr.length[1][1]=MGr.length[2][2]=0; MGr.length[3][3]=MGr.length[4][4]=0; MGr.length[5][5]=MGr.length[6][6]=0; MGr.length[7][7]=MGr.length[8][8]=0; MGr.length[9][9]=MGr.length[10][10]=0; }

3.2.2 Floyd求最短路径的实现

void floyd() //用floyed算法求两个景点的最短路径 {

inti,j,k; //所求两个景点i,j及中间经过点k for(i=1;i<=N;i++)

for(j=1;j<=N;j++) { }

for(k=1;k<=N;k++) {

shortest[i][j]=MGr.length[i][j]; path[i][j]=0; shortest[i][j]=0;

5

《数据结构》课程设计报告

}

{

for(i=1;i<=N;i++)

for(j=1;j<=N;j++)

if(shortest[i][j]>(shortest[i][k]+shortest[k][j])) { } } }

//用path[][]记录从i到j的最短路径上点j的前驱景点的序号 shortest[i][j]=shortest[i][k]+shortest[k][j]; path[i][j]=k; path[j][i]=k;

//floyed

void display(inti,int j) {

void introduce();

//打印两个景点的路径及最短距离 inta,b; a=i; b=j;

printf(\您要查询的两景点间最短路径是:\\n\\n\ fflush(stdin);

if(shortest[i][j]!=MaxRoad) { if(i

printf(\while(path[i][j]!=0) {

6

《数据结构》课程设计报告

}

// 把i到j的路径上所有经过的景点按逆序打印出来

printf(\调用景点名称 printf(\if(i

j=path[i][j];

else

i=path[j][i];

printf(\printf(\的最短路径是: %d 千米。

\\n\\n\

} else {

printf(\while(path[i][j]!=0) { }

printf(\printf(\的最短路径是: %d 千米。

//把i到j的路径上所有经过的景点按顺序打印出来 printf(\if(i

j=path[i][j];

else

i=path[j][i];

\\n\

} }

else //输入景点路径不合法时提示错误 printf(\输入错误!不存在此路!\\n\\n\printf(\

7

《数据结构》课程设计报告

}

3.2.3选择函数 int n=0; char k; while(1){ }

fflush(stdin);//清屏 scanf(\ switch(k) //选择语句 {

case 'i':

printf(\进入景点信息查询:\introduce();

printf(\请输入字母i,m,s或e.\\n\\n\break;

case 'm':

printf(\景点地图:\map();

printf(\请输入字母i,m,s或e.\\n\\n\break;

case 's':

printf(\进入最短路径查询:\shortestdistance();

printf(\请输入字母i,m,s或e.\\n\\n\break;

case 'e':

printf(\欢迎您的使用\exit(0);

default:// 输入号不合法时提示错误

printf(\输入信息错误!\\n请输入字母i,m,s或e.\\n\\n\break; }

8

《数据结构》课程设计报告

}

4西湖导游系统的测试及运行效果

4.1 主界面 如图4.1.

图4.1主界面

4.2 景点信息查询

查询景点编号为2的景点信息,如图4.2.

图4.2 景点信息查询

4.3地图显示 如图4.3. 4.4 最短路径查询

9

《数据结构》课程设计报告

查询编号3到5的最短路径,如图4.4. 4.5功能选项选择错误 如图4.5.

4.6查询最短路径景点输入错误 如图4.6.

图4.3地图显示

图4.4 最短路径查询

10

《数据结构》课程设计报告

图4.5功能选项选择错误

4.6查询最短路径景点输入错误

5系统设计遇到的问题及解决方案

问题1:在主函数前定义函数没有进行声明。

问题2:Floyd函数中三个for循环的嵌套关系出错,到时结果错误,之后是参照其他程序,在网上又学习了一遍用法后改正。

问题3:在用switch函数,输入功能错误时出现两次提示,在switch前的scanf上加了清屏fflush(stdin)后,错误解决。

问题4:在刚开始做的时候景点信息直接用的输出调出景点信息,没有用结构体存储,在想添加景点信息的时候发现这个错误。.

问题5::主函数中没有调用景点信息函数view,而是在introude函数中调用,结果导致只能在查询景点信息的时候调用景点的信息,而在求最短路径的时候,编译没有错误,输

11

《数据结构》课程设计报告

出的结果不能正确显示,一直误以为是Floyd用法出错。最后是把view函数放到主函数中,问题解决。

6总结与收获

这次课程设计中,我更加熟悉了图的数组表示法及Floyd函数的用法,在不断调试过程中,学习到了更多的知识,这次设计感觉并不是太好。增删和修改景点的功能没有实现,程序中也存在一些Bug。

通过这次课程设计,我对程序中算法的概念理解的更加透彻。算法是程序中必不可少的部分,它是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。同时,在选择算法时必须考虑算法的时间复杂度和空间复杂度,这样才能让程序正常,高效的运行。

《数据结构》在计算机科学中是一门综合性的专业基础课.数据结构的研究不仅涉及到计算机的硬件(特别是编码理论、存储装置和存取方法等)的研究范围,而且和计算机软件的研究有着更密切的关系,无论是编译程序还是操作系统,都涉及到数据元素在存储器中的分配问题.在研究信息检索时也必须考虑如何组织数据,以便查找和存取数据元素更为方面.因此,可以认为数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程.在计算机科学中,数据结构不仅是一般程序设计(特别是非数值计算的程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础。

附西湖导游系统程序源代码

#include #include #include

#define MaxViewNum 50//景点个数最大50 #define MaxRoad 1000 //定义路径为无穷大

12

《数据结构》课程设计报告

#define N 10 //目前景点个数

void map();//自定义函数原型说明(景点地图) void floyd();//自定义函数原型说明

void display(inti,int j);//自定义函数原型说明 void introduce(); //自定义函数原型说明 typedefstruct {

char name[30];//景点名称 char number[10];//景点序号 char introduce[200];//景点介绍 }Elemtype;

typedefstruct {

intnum; //景点编号 Elemtype data; //景点信息 }View; //定义景点

typedefstruct {

View view[MaxViewNum];//存放顶点的一维数组,数组第零单元没有用上

unsigned int length[MaxViewNum][MaxViewNum]; //存放路径if(shortest[i][j]!=MGr.length[i][j]) intm,n; }MGraph;

MGraphMGr; //全局变量,定义MGr为MGraph类型

int shortest[MaxViewNum][MaxViewNum]; //定义全局变量存贮最小路径

13

长度

《数据结构》课程设计报告

int path[MaxViewNum][MaxViewNum]; //定义存贮路径 view()//十个景点的具体信息 { inti,j;

MGr.view[1].num=1;

strcpy(MGr.view[1].data.name,\苏堤春晓\

strcpy(MGr.view[1].data.introduce,\苏堤春晓俗称苏公堤,为西湖十景之首。是一条贯穿西湖南北风景区的林荫大堤,苏堤南起南屏山麓,北到栖霞岭下,全长近三公里,堤宽平均36米。\MGr.view[2].num=2;

strcpy(MGr.view[2].data.name,\曲院风荷\

strcpy(MGr.view[2].data.introduce,\曲院风荷位于西湖西侧,岳飞庙前面。南宋时,此有一座官家酿酒的作坊,取金沙涧的溪水造曲酒,闻名国内。附近的池塘种有菱荷,每当夏日风起,酒香荷香沁人心脾,因名“曲院风荷”。\MGr.view[3].num=3;

strcpy(MGr.view[3].data.name,\平湖秋月\

strcpy(MGr.view[3].data.introduce,\平湖秋月,西湖十景之一,位于白堤西端,孤山南麓,濒临外西湖。凭临湖水,登楼眺望秋月,在恬静中感西湖的浩淼,洗涤烦躁的心境,是她的神韵所在。\MGr.view[4].num=4;

strcpy(MGr.view[4].data.name,\断桥残雪\

strcpy(MGr.view[4].data.introduce,\断桥的石桥拱面无遮无拦,在阳光下冰雪消融,露出了斑驳的桥栏,而桥的两端还在皑皑白雪的覆盖下。依稀可辩的石桥身似隐似现,而涵洞中的白雪奕奕生光,桥面灰褐形成反差,远望去似断非断,故称断桥。\MGr.view[5].num=5;

strcpy(MGr.view[5].data.name,\柳浪闻莺\

14

《数据结构》课程设计报告

strcpy(MGr.view[5].data.introduce,\南宋时,这里是京城最大的御花园,称聚景园。当时园内有会芳殿和三堂、九亭,以及柳浪桥和学士桥。清代恢复柳浪闻莺旧景。有柳洲之名。其间黄莺飞舞,竞相啼鸣,故有“柳浪闻莺”之称。\MGr.view[6].num=6;

strcpy(MGr.view[6].data.name,\花巷观鱼\

strcpy(MGr.view[6].data.introduce,\红鱼池位于园中部偏南处,是全园游赏的中心区域。池岸曲折自然,池中堆土成岛,池上架设曲桥,倚桥栏俯看,数千尾金鳞红鱼结队往来,泼刺戏水。\MGr.view[7].num=7;

strcpy(MGr.view[7].data.name,\雷锋夕照\

strcpy(MGr.view[7].data.introduce,\位于西湖湖南、净慈寺前的夕照山上,因晚霞镀塔,佛光普照而闻名。\MGr.view[8].num=8;

strcpy(MGr.view[8].data.name,\双峰插云\

strcpy(MGr.view[8].data.introduce,\巍巍天目山东走,其余脉的一支,遇西湖而分弛南山、北山,形成环抱状的名胜景区,两山之巅既南高峰和北高峰。\MGr.view[9].num=9;

strcpy(MGr.view[9].data.name,\南屏晚钟\

strcpy(MGr.view[9].data.introduce,\即指南屏山净慈寺傍晚的钟声,南屏山在杭州西湖南岸、玉皇山北,九曜山东。主峰高百米,林木繁茂,石壁如屏,北麓山脚下是净慈寺,傍晚钟声清越悠扬。\MGr.view[10].num=10;

strcpy(MGr.view[10].data.name,\三潭映月\

strcpy(MGr.view[10].data.introduce,\岸上金桂婆娑,柳绿花明,与雕栏画栋的建筑相映成趣。具有湖中有岛,岛中有湖,园中有园,曲回多变,步移景新的江南水上庭园的艺术特色。\

15

《数据结构》课程设计报告

for(i=1;i<=N;i++)

{

for(j=1;j<=N;j++)

{

MGr.length[i][j]=MaxRoad;

} }

for(i=1;i<=N;i++) {

shortest[i][j]=0;

}

MGr.length[1][2]=MGr.length[2][1]=2;//设定已有路径的长度 MGr.length[2][3]=MGr.length[3][2]=5; MGr.length[2][8]=MGr.length[8][2]=3; MGr.length[2][9]=MGr.length[9][2]=4; MGr.length[2][6]=MGr.length[6][2]=3;

MGr.length[6][4]=MGr.length[4][6]=6; MGr.length[6][7]=MGr.length[7][6]=5; MGr.length[3][6]=MGr.length[6][3]=10;

MGr.length[5][7]=MGr.length[7][5]=7; MGr.length[3][10]=MGr.length[10][3]=8;

MGr.length[1][1]=MGr.length[2][2]=0; MGr.length[3][3]=MGr.length[4][4]=0;

MGr.length[5][5]=MGr.length[6][6]=0;

16

《数据结构》课程设计报告

MGr.length[7][7]=MGr.length[8][8]=0;

MGr.length[9][9]=MGr.length[10][10]=0; }

void map()//地图信息 { }

17

printf(\平湖秋月--| 柳浪闻莺 \\n\printf(\printf(\三潭映月雷锋夕照 \\n\

printf(\printf(\花巷观鱼---|--| \\n\printf(\printf(\printf(\双峰插云断桥残雪 \\n\

printf(\printf(\曲院风荷---|-----| \\n\printf(\printf(\苏堤春晓南屏晚钟 \\n\

《数据结构》课程设计报告

void floyd() //用floyed算法求两个景点的最短路径 {

inti,j,k; //所求两个景点i,j及中间经过点k

for(i=1;i<=N;i++)

for(j=1;j<=N;j++) { }

for(k=1;k<=N;k++) { {

for(j=1;j<=N;j++) for(i=1;i<=N;i++)

shortest[i][j]=MGr.length[i][j]; path[i][j]=0;

if(shortest[i][j]>(shortest[i][k]+shortest[k][j])) { }

18

//用path[][]记录从i到j的最短路径上点j的前驱景点的序号 shortest[i][j]=shortest[i][k]+shortest[k][j]; path[i][j]=k; path[j][i]=k;

《数据结构》课程设计报告

}

} }

//floyed

void display(inti,int j) {

void introduce();

//打印两个景点的路径及最短距离 inta,b; a=i; b=j;

printf(\您要查询的两景点间最短路径是:\\n\\n\fflush(stdin);

if(shortest[i][j]!=MaxRoad) { if(i

printf(\while(path[i][j]!=0) {

// 把i到j的路径上所有经过的景点按逆序打印出来

printf(\调用景点名称

19

《数据结构》课程设计报告

}

printf(\if(i

j=path[i][j];

else

i=path[j][i];

printf(\printf(\的最短路径是: %d 千米。

\\n\\n\

} else {

printf(\while(path[i][j]!=0) { }

printf(\printf(\的最短路径是: %d 千米。

//把i到j的路径上所有经过的景点按顺序打印出来 printf(\if(i

j=path[i][j];

else

i=path[j][i];

20

《数据结构》课程设计报告

\\n\ }

else //输入景点路径不合法时提示错误 printf(\输入错误!不存在此路!\\n\\n\printf(\}

//display

intshortestdistance() {

}

//要查找的两景点的最短距离 inti,j;

printf(\请输入要查询的两个景点的编号(1->10的数字编号并用','间隔):\scanf(\if(i>N||i<=0||j>N||j<0) { } else {

floyd(); //调用两个函数

21

printf(\输入信息错误!\\n\\n\

printf(\请输入要查询的两个景点的编号(1->10的数字编号并用','间隔):\\n\scanf(\

《数据结构》课程设计报告

}

}

display(i,j);

return 1;

fflush(stdin);//清屏

//shortestdistance void introduce() {

printf(\您想查询哪个景点的详细信息?请输入景点编号:\scanf(\fflush(stdin);//清屏

printf(\编号:%d\\n景点名称:%s\\n简

介:%s\\n\printf(\//switch(m); }

void main()//主函数 {

int n=0; char k;

view();//调用景点信息函数 int m;

22

《数据结构》课程设计报告

//主菜单

printf(\欢迎使用西湖导游系统!----------------\\n\printf(\景点信息查询???请按 i (introduc)键\\n\printf(\景点地图?????请按 m (map)键\\n\

printf(\景点最短路径查询?请按 s (shortestdistance)键\\n\printf(\退出系统?????请按 e (exit)键\\n\printf(\景点列表:\\n\printf(\苏堤春晓\\n\printf(\曲院风荷\\n\printf(\平湖秋月\\n\printf(\断桥残雪\\n\printf(\柳浪闻莺\\n\printf(\花巷观鱼\\n\printf(\雷锋夕照\\n\printf(\双峰插云\\n\printf(\南屏晚钟\\n\printf(\三潭映月\\n\printf(\请选择服务:\while(1){

fflush(stdin);//清屏 scanf(\ switch(k) //选择语句 {

case 'i':

23

《数据结构》课程设计报告

}

}

printf(\进入景点信息查询:\introduce();

printf(\请输入字母i,m,s或e.\\n\\n\break;

case 'm':

printf(\景点地图:\map();

printf(\请输入字母i,m,s或e.\\n\\n\break;

case 's':

printf(\进入最短路径查询:\shortestdistance();

printf(\请输入字母i,m,s或e.\\n\\n\break;

case 'e':

printf(\欢迎您的使用\exit(0);

default:// 输入号不合法时提示错误

printf(\输入信息错误!\\n请输入字母i,m,s或e.\\n\\n\break; }

24

《数据结构》课程设计报告

课程设计成绩

姓名 题目 班级 西湖导游系统 指导教师 指导教师评语 评定成绩: 指导教师签字: 年月日 25

《数据结构》课程设计报告

26

本文来源:https://www.bwwdw.com/article/lhbp.html

Top