《全国交通咨询系统设计C语言》由会员分享,可在线阅读,更多相关《全国交通咨询系统设计C语言(51页珍藏版)》请在人人文库网上搜索。
1、* *建立一个模拟的交通网络(用有向网来表示),编程实现从某个城市 *出发到另 一个城市所需的最短的时间及路径。* *建立一个模拟的交通网络(用有向网来表示),编程实现从某个城市*出发到另一个城市所需的最短的时间及路径。* */#defi ne MAX_VERTEX_NUM 18#defi ne NULL 0#defi ne MAX_ARC_SIZE 100#defi ne MAX_ROUTE_NUM 5#i nclude#i nclude#i nclude#defi ne False 0#defi ne True 1#define INFINITY 10000 /* 预定义 */ typed。
2、ef struct int nu mber;float expe nditure;int begi ntime2;int arrivetime2;Vehide;typedef struct Vehide stataMAX_ROUTE_NUM;int last;in folist;typedef struct ArcNode int adjvex;struct ArcNode *n extarc;in folist info;ArcNode;typedef struct VNode char cit yn ame10;ArcNode *pla nefirstarc,*tra in firstar。
3、c; VNode,AdjListMAX_VERTEX_NUM;typedef struct AdjList vertices;int vex nu m,pla nearc nu m,tra inarcnum;ALGraph;typedef struct Node int adjvex;int route;struct Node *n ext;Node;typedef struct QNode int adjvex;struct QNode *n ext;QNode;typedef struct QNode *front;QNode *rear;Lin kQueue;typedef struct。
4、 TimeNode int adjvex;int route;int begi ntime2;int arrivetime2;struct TimeNode *childMAX_ROUTE_NUM;TimeNode,*TimeTree;struct arc int co;char vt10;char vh10;int bt2;int at2;float mo;aMAX_ARC_SIZE; /* 数据结构定义 */ char cityMAX_VERTEX_NUM10;int TTime2;int time2;int time12;int time22;in t cMAX_VERTEX_NUM;i。
5、nt dMAX_VERTEX_NUM; /* 变量定义 */*各种操作说明*/void Disp();void Admi nister(ALGraph *G);void cityedit(ALGraph *G);void CopyTimeTree(TimeTree p,TimeTree q);void createcityfile();void CreateGraph(ALGraph *G);void createpla nefile();void CreateTimeTree(TimeTree p,i nt i,i nt j,L in kQueue*Q,i nfolist(*arcs)MAX。
6、_VERTEX_NUM);void createtra in file();int Deletepla neArc(ALGraph *G);void DeleteQueue(Li nkQueue *Q,i nt *x);int DeletetrainArc(ALGraph *G);void DeleteVertex(ALGraph *G);void Dema ndDispose(i nt n ,ALGraph G);void DestoryTimeTree(TimeTree p);void En terpla neArc(ALGraph *G);void En terQueue(L in kQ。
7、ueue *Q,i nt x);void En tertrainArc(ALGraph *G);void En terVertex(ALGraph *G);void ExpenditureDispose(int k,infolist (*arcs)MAX_VERTEX_NUM,ALGraph G,int v0,i nt v1,float *M,i nt *fin al);void flightedit(ALGraph *G);void in itgraph(ALGraph *G);void In itQueue(L in kQueue *Q);int IsEmpty(L in kQueue *。
8、Q);int LocateVertex(ALGraph *G ,char *v);void Min Expe nditure(i nfolist arcs,float *expe nditure,i nt *route);void Mi nTime(i nfolist arcs,i nt *time,i nt *route);void Prin tGraph(ALGraph *G);int save(ALGraph *G);void TimeDispose(int k,infolist (*arcs)MAX_VERTEX_NUM,ALGraphG,int v0,intv1,i nt (*T)2。
9、,i nt *fin al);void TimeTreeDispose(Node *head,i nfolist (*arcs)MAX_VERTEX_NUM);void trai nedit(ALGraph *G);void TransferDispose(int k,infolist (*arcs)MAX_VERTEX_NUM,ALGraph G,int v0,i nt v1);void UserDema nd(ALGrap