功能:给出一张某公园的导游图,游客通过终端询问可知:
从某一景点到另一景点的最短路径。游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。
分步实施:
1. 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;
2. 完成最低要求:建立一个文件,包括5个景点情况,能完成遍历功能;
3. 进一步要求:进一步扩充景点数目,画出景点图,有兴趣的同学可以自己扩充系统功能。
要求:1)界面友好,函数功能要划分好
2)总体设计应画一流程图
3)程序要加必要的注释
4)要提供程序测试方案
5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。
软件环境:
Visual C++ 程序集成环境
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#define MVNum 100//最大顶点数
#define MAXEDGE 10000
#define datatype int
#define Maxint 32767
#define MAX 100
enum boolean{FALSE,TRUE};
int D1[MVNum],p1[MVNum];
int D[MVNum][MVNum],p[MVNum][MVNum];
typedef struct
{
int begin;
int end;
int weight;
}edge;
typedef struct
{
int adj;
int weight;
}AdjMatrix[MAX][MAX];
typedef struct
{
AdjMatrix arc;
int vexnum, arcnum;
}MGraph;
void CreatGraph(MGraph *,int n,int m);//函数申明
void sort(edge* ,MGraph *,int m);
void MiniSpanTree(MGraph *,int n,int m);
int Find(int *,