当前位置:文档之家› 数据结构课程设计报告,校园导游图

数据结构课程设计报告,校园导游图

淮海工学院计算机工程学院
课程设计报告
设计名称:数据结构课程设计
选题名称:校园导游图
姓名:学号:
专业班级:
系(院):计算机工程学院
设计时间: 2011.12.19~2011.12.30 设计地点:软件工程实验室、教室
9 体育馆学生体育锻炼地点实际输出的信息为:
操作成功,与预期结果一致。

2.打印校园导游图的邻接矩阵:
操作成功,与预期结果一致。

3、查询景点间最短路径:
比如:
查询景点1(计算机楼)和3(图书馆)之间的最短路径,预期结果应为:
计算机楼—> 文通楼—> 图书馆,
路径总长度为35
1520
操作成功,与预期结果一致。

4、景点信息查询:
比如:查询景点为1的景点信息,预期结果应为:
景点序号(position)景点名称(name) 景点介绍(intoduction)
1 计算机楼计算机学院学生学习基地,楼高6层
与预期结果一致。

查询成功。

5、更改图的信息:
更改图信息主页面:
5.1重新建图
比如重新建一个有3个景点和3条路径的无向图:
景点信息分别为:
景点序号(position)景点名称(name) 景点介绍(intoduction)
0 计算机楼信息中心
1 第一食堂饮食中心
2 B#宿舍男生宿舍
矩阵关系为:
0 15 25
15 0 50
25 50 0
与预期结果一致,重新建图成功。

5.2删除景点:
比如删除景点编号为1的景点:
则输出的矩阵中应失去原第一行第一列,
并且其信息不再出现在校园导游中:
删除景点前的图信息:
删除景点前的矩阵:
删除景点后的图的信息和矩阵:
与预期结果一致,删除景点成功。

5.3删除两景点间的路径:
比如删除编号为0和2的两景点间的路径,则打印出来的矩阵在第0行第2列和第2行第0列的值应为0。

删除路径前的矩阵:
删除路径后的矩阵:
与预期结果一致,删除路径成功。

5.4增加景点信息
比如增加一个景点,其信息为:
景点序号(position)景点名称
(name)
景点介绍(intoduction)
10 A#7宿舍楼计算机学院女生宿舍
对应的矩阵中应增加一行一列,第10行和第10列上所有元素都应为0,输出的图信息中最后应增加上述的信息。

增加景点前的图信息:
增加景点前的矩阵:
增加景点后的图信息和矩阵:
与预期结果一致,增加景点成功。

5.5增加一条路径
比如在景点0和4之间加一条长度为10的路径,则在第0行第4列与第4行第0列元素应为10。

增加路径前的矩阵:
增加路径后的矩阵:
与预期结果一致,增加路径成功。

5.6更新图信息
比如要更新一个景点和一条路径的信息,将景点信息:
景点序号(position)景点名称
(name)
景点介绍(intoduction)
1 计算机楼计算机学院学生学习基地,楼高
6层
改为:
景点序号(position)景点名称
(name)
景点介绍(intoduction)
1 B#8 男生宿舍更改顶点编号为0和3路径长度,路径由30改为15。

更改后的图中编号为1的信息应变为:
景点序号(position)景点名称
(name)
景点介绍(intoduction)
1 B#8 男生宿舍矩阵中第0行第3列和第3行第0列元素应由30变为15.更改景点前的图信息:
更改路径前的矩阵:
更新后的图信息和矩阵:
6、查找两顶点间的所有路径
比如查找1,3两点间的所有路径,所有路径为:
五用户手册
1、进入本系统后,随即显示系统主菜单页面。

用户可在此菜单下输入各子菜单对应的数字,并按回车键,执行相应的子菜单命令。

2、查询、修改、增加、删除景点以及景点间的路径,都是通过输入景点的编号来实现的,进入主菜单时,用户最好先选择“1、学校景点介绍”和“2、打印邻接矩阵”,方便用户了解景点信息以及路径信息。

六测试成果
操作主界面
查看淮工景点平面图
打印无向图邻接矩阵
查询两顶点间的最短路径
按编号查询景点信息
查询两顶点间的所有路径:
更改图信息:
退出系统
七附录(源程序清单)
#include <iostream>
#include<malloc.h>
#include<string>
#include<iomanip>
using namespace std;
#define max_ver_num 20
#define OK 1
#define FALSE 0
#define Error -1
#define A 1000
#define TRUE 1
typedef struct arcnode//设置边的权值信息{
int adj;//路径权值
}arcnode,adjarcs[max_ver_num][max_ver_num]; typedef struct verdata//设置景点信息
{
int position;
char name[60];
char introduction[1000];
}verdata;
typedef struct mgraph
{
verdata vexs[max_ver_num];。

相关主题