}
}while(chose2!=0); break;
case 3:
do {
cout<<\欢迎进入路径修改界面!*\\n\cin>>chose3; switch(chose3)
{
case 1: cout<<\请输入插入路径的起点\ cin>>insert1; cout<<\请输入插入路径的终点\
cin>>insert2;
cout<<\请输入插入路径的路长\cin>>insert3;
change(insert1,insert2,insert3,GA); cout<<\插入成功!\\n\break;
case 2: cout<<\请输入修改路径的起点\
cin>>insert1;
cout<<\请输入修改路径的终点\cin>>insert2;
cout<<\请输入修改路径的路长\cin>>insert3;
change(insert1,insert2,insert3,GA); cout<<\修改成功!\\n\
break; case 3: cout<<\请输入删除路径的起点\ cin>>insert1; cout<<\请输入删除路径的终点\
cin>>insert2;
change(insert1,insert2,100000,GA); cout<<\删除成功!\\n\break; break;
case 0:
default: cout<<\您的输入有误,即将返回路径修改界面\
break;
}
}while(chose3!=0);
system(\清屏语句 break;
case 4: system(\清屏语句
default: cout<<\您的输入有误,即将返回主菜单!\\n\\n\\n\ }
break;
cout<<\退出成功~欢迎您再次使用本系统~O(∩_∩)O谢谢\break;
}while(chose1!=4);
}
(5)画出函数的调用关系图。 系统子程序及功能设计
本系统共设置18个子程序,各子程序的函数名及功能说明如下。
(1)InitVT(VT,a);//传输顶点数据 (2)InitMatrix(GA,data);//传输结构体数据
(3)PrintMatrix(GA,VT);//根据邻接矩阵输出二元组表示 (4)Dijkstra(GA,dist,path,start,9);
Print(path,start,VT); // 用Dijkstra算法,求一个景点到其他景点间的最短路径,并打印
(5)change(insert1,insert2,insert3,GA);//修改图,包括增删边,修改权 (6)switch
函数主要调用关系图 图中数字是各函数的编号
18 main( ) 17 mainwork( ) 1 2 6 3 6 6 4 4 4 5 5 5 五、算法实现 六、软件测试
七、技术讨论(可选) 八、收获与体会
本次实践让我们小组懂得如何运用图结构来编写与地图有关的查询程序,小组成员发挥团队合作精神,分工合作,各尽其职,在短时间内完成程序编写。 九、软件运行的部分截图及说明
主菜单界面
查询景点及路径
查询从东门进入各景点的最短路径
返回主菜单
修改路径页面
插入路径
退出程序