#include #include # define MAXNUM 20 # define INF 6789 typedef struct { int adj; //该弧所指向的顶点的位置 int *info; /*该弧相关信息*/ }sceneinfo; typedef struct adjlist{ int num; // 景点编号 char *sight; // 景点名称 char *description; /* 景点描述*/ }adjlist; typedef struct algraph { adjlist ver[MAXNUM]; sceneinfo arcs[MAXNUM][MAXNUM]; int vexnum,arcnum; /*图的当前顶点数和弧数*/ } algraph; algraph m; //把图定义为全局变量 int visited[MAXNUM]; //全局数组,用来记录各顶点被访问的情况 int r[MAXNUM]; //全局数组
用来存放路径上的各个顶点 int p=11; //记录当前景点的个数 int w=16; //记录当前景点边数的个数 int a=0; //全局变量,用来记录每对顶点之间的所有路径的条数 int menu(void) //用户操作界面 { int i; printf("\n---------------------------------------------\n"); printf("1
图中任意景点的相关信息查\n"); printf("2
任意两个景点间的最短路径\n"); printf("3
任意两个景点间的所有路径\n"); printf("4
增加有关景点和道路的信息\n"); printf("5
删除更新有关景点和道路的信息\n"); printf("6
更新有关景点和道路的信息\n"); pr