程序如下: #include #include #include #define INFINITY 1000 #define max_name 50 #define max_vertex_num 50 typedef char vertex[max_name];//顶点名字串 typedef int adjMatrix[max_vertex_num][max_vertex_num];//邻接距阵 typedef struct {vertex adjvex; //邻接矩阵 int lowcost; //权值 }close[max_vertex_num];//定义一个结构以便在后面 closedge 使用 typedef struct//定义图 { vertex vexs[max_vertex_num]; //顶点集 adjMatrix arcs; //边 int vexnum,arcnum;//点个数,边个数 }MGraph; int LocateVex(MGraph G,vertex u)//若 G 中存在顶点u,则返回该点在图中位置;否则返回其他信息; { int i; for(i=0;i