void main()
{/*主函数*/
int i,j; char k;
for(i=0;i<=n;i++)
for(j=0;j<=n;j++)
cost[i][j]=INT_MAX;
cost[1][5]=cost[5][1]=36; cost[2][3]=cost[3][2]=16;
cost[2][4]=cost[4][2]=22; cost[2][5]=cost[5][2]=40;
cost[2][10]=cost[10][2]=35; cost[10][5]=cost[5][10]=50;
cost[3][4]=cost[4][3]=29; cost[5][6]=cost[6][5]=21;
cost[6][10]=cost[10][6]=38; cost[7][8]=cost[8][7]=28;
cost[7][9]=cost[9][7]=21; cost[8][9]=cost[9][8]=12;
cost[6][7]=cost[7][6]=20; cost[6][9]=cost[9][6]=29;
cost[9][10]=cost[10][9]=61; cost[1][2]=cost[2][1]=68;
cost[1][1]=cost[2][2]=cost[3][3]=cost[4][4]=cost[5][5]=0;
cost[6][6]=cost[7][7]=cost[8][8]=cost[9][9]=cost[10][10]=0;
while(1)
{
printf("------------------------------------------------------------\n");
printf("****************欢迎使用常州工学院导游系统!*****************\n");
printf("------------------------------------------------------------\n");
printf("\ta.景点信息查询\n");
printf("\tb.景点最短路径查询\n");
printf("\tc.退出系统\n");
printf("-----------------------------------------------------------------------------------------
\n"); printf("学校景点列表:\n");
printf("\t1:永远的127 \t2:小桥流水\n\t3:行政楼 \t4:学校西门\n");
printf("\t5:图书馆\t6:篮球场\n\t7:院士语林 \t8:院士楼\n");
printf("\t9:体育馆 \t10:秋白楼\n");
printf("-----------------------------------------------------------------------------------------
\n"); printf("请选择所需服务:");
scanf("%c",&k);
switch(k)
{
case 'a':
printf("\t景点信息查询\n");
introduce(); break;
case 'b':
printf("\t最短路径查询\n:");
shortestdistance(); break;
case 'c':
printf("谢谢使用,祝您愉快!"); exit(0);
default:
printf("输入信息错误!请重新输入\n");printf("\n\n");
break;
}
}
}
【使用说明】
运行程序,会跳出一个登陆菜单,有三个选项可以选择,并下面列出了十个景点,一目了然,输入序号选择进入不同的系统选项,之后就可以依照上面景点的序号,选择不同的景点进行不同功能的查询。
-----------------------------------------------------------------------------------------
****************欢迎使用常州工学院导游系统!*****************
-----------------------------------------------------------------------------------------
a.景点信息查询
b.景点最短路径查询
c.退出系统
-----------------------------------------------------------------------------------------
学校景点列表
1:永远的127 2:小桥流水
3:行政楼 4:学校西门
5.图书馆 6:篮球场
7:院士语林 8:院士楼
9:体育馆 10:秋白楼
-----------------------------------------------------------------------------------------
请选择所需服务:
【调试分析说明】
这个程序的主要难点是floyed算法,在调试过程中很难实现最短距离的查找就是因为对这个算法的不熟悉,出现了很多错误,在查找最短路径时,无法算出需要的结果,而是直接跳出,始终无法得出最终结果,之后发现原来是没有return 1。另外就是打印最短路径的函数实现,刚开始以为只是简单的打印,后来才发现需要它自己的算法,值得我们自己好好琢磨。
【算法的改进设想】
通过对各个不同功能函数的调用实现整个程序的功能,不足在于整个程序显得太厚重,应该思考如何采用更简单的方法实现程序的功能。另外,我们可以考虑把程序进一步扩充,实现更多更全面的功能。
【总结】
这个程序对我最大的帮助就是了解了floyed算法,并用它寻找图中两点之间的最短路径。虽然在程序编制,调试的过程中出现了一些问题,但最终通过自己的努力和同学的帮助解决了问题。这可以锻炼我独立解决问题的能力。从刚开始的没有头绪到现在把它完全实现,这个过程中,我得到了很多,有解决问题的方法,有自己信心的建立,最重要的是整个过程我付出努力后的满足,我相信,一份耕耘,一份收获!
上一页 [1] [2] [3] 下一页
常州工学院C++校园导游咨询数据结构 第2页下载如图片无法显示或论文不完整,请联系qq752018766