• 大小: 1.42MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-29
  • 语言: 其他
  • 标签:

资源简介

设计四川大学的校园平面图,至少包括10个以上的地点,每两个地点间可以有不同的路,且路长可能不同。以图中顶点表示校内各地点,存放名称、代号、简介等信息;用边表示路径,存放路径长度等相关信息。(要求使用真实地点及其位置)

资源截图

代码片段和文件信息

#include 
#include 
using namespace std;
const int MAXNUM = 15;

    struct ArcCell
{
int adj;   
string info;  //该弧相关的信息的指针
};
struct Node
{
string name;
string data ;

};
ArcCell **arcs;    //邻接矩阵
Node vvec[15];
int vexnum;                       //图的当前顶点个数
int arcnum;                       //图的弧数
int prev[MAXNUM];
const int  MAXINT = 999;
int dist[MAXNUM];


void MGraph(int vexNum)
{
vexnum=vexNum;
//分配顶点向量数组
vvec[0].name=“西南门“;vvec[0].data=“四川大学江安校区的西南门。街对面有67路公交站“;
vvec[1].name=“南门“;vvec[1].data=“四川大学江安校区的南门。街对面是江安花园,门内有人造喷泉。“;
vvec[2].name=“东南门“;vvec[2].data=“四川大学江安校区的东南门。“;
vvec[3].name=“东门“;vvec[3].data=“四川大学江安校区的东门。“;
vvec[4].name=“7舍“;vvec[4].data=“软件学院和计算机学院的宿舍“;
vvec[5].name=“一餐“;vvec[5].data=“一号餐厅“;
vvec[6].name=“二餐“;vvec[6].data=“二号餐厅“;
vvec[7].name=“青广“;vvec[7].data=“校园青春广场,学生活动的场所“;
vvec[8].name=“一教“;vvec[8].data=“第一教学楼区,有A、B、C、D四个教学楼“;
vvec[9].name=“图书馆“;vvec[9].data=“四川大学江安校区的图书馆有5楼,应用了数字化图书馆“;
vvec[10].name=“二基楼“;vvec[10].data=“第二基础实验楼,包含了化学、物理、计算机实验室,其中一部分是计算机软件学院的办公楼。“;
vvec[11].name=“综合楼“;vvec[11].data=“综合楼也叫“逸夫楼”,有大型的阶梯教室,也有设备精良的小班教室“;
vvec[12].name=“体育馆“;vvec[12].data=“体育馆通常是羽毛球的练习场,楼上有瑜伽室和跆拳道道馆“;
vvec[13].name=“文科楼“;vvec[13].data=“文科楼我只去过几次“;
vvec[14].name=“长桥“;vvec[14].data=“学生上课必经的长桥,桥下是美丽的明远湖“;

//动态分配二维数组, 注意二维数组的动态分配
        arcs = new ArcCell *[vexnum];
for (int i = 0; i < vexnum; i++)
{
//为每一行动态分配空间
arcs[i] = new ArcCell[vexnum];
}
}



//初始化顶点数组和邻接矩阵
void Init()
{                //   0        1       2       3      4      5      6     7      8        9       10       11       12       13      14 

for (int i = 0; i < vexnum; i++)
{
ArcCell ac;
ac.adj = MAXINT;
ac.info = ‘0‘;
for (int j = 0; j < vexnum; j++)
{
                arcs[i][j] = ac;
}
}
}





//构造一个带权无向图
void Create()
{
Init();

arcnum = 32;
arcs[0][7].adj = arcs[7][0].adj = 3;
arcs[7][5].adj = arcs[5][7].adj = 1;
arcs[5][6].adj = arcs[6][5].adj = 2;
arcs[6][4].adj = arcs[4][6].adj = 1;
arcs[7][4].adj = arcs[4][7].adj = 2;
arcs[7][14].adj = arcs[14][7].adj = 1;
arcs[14][8].adj = arcs[8][14].adj = 2;
arcs[14][9].adj = arcs[9][14].adj = 2;
arcs[9][8].adj = arcs[8][9].adj = 1;
arcs[9][10].adj = arcs[10][9].adj = 1;
arcs[10][13].adj = arcs[13][10].adj = 2;
arcs[13][3].adj = arcs[3][13].adj = 1; 
arcs[13][12].adj = arcs[12][13].adj = 1;
arcs[12][2].adj = arcs[2][12].adj = 1;
arcs[8][11].adj = arcs[11][8].adj = 1;
arcs[11][1].adj = arcs[1][11].adj = 1; 


}

void displayGraph()
{
cout << “总共有“ << vexnum << “个地点,“ 
 << arcnum << “路径“ << endl;
for (int i = 0; i < vexnum; i++)
{
cout << “第“ << i+1 << “个地点是:“ << vvec[i].name <<“     “
     << “相邻的地点有: “;
    for (int j = 0; j < vexnum; j++)
    {
if (arcs[i][j].adj != MAXINT)
cout << vv

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5727  2017-12-21 17:49  数字化校园\main.cpp

     文件      89649  2016-12-20 17:27  数字化校园\main.o

     文件       1379  2016-12-20 17:27  数字化校园\Makefile.win

     文件    1122371  2017-12-31 02:45  数字化校园\陈金裕_2014141463009.docx

     文件        898  2016-12-19 21:16  数字化校园\项目1.dev

     文件    1399136  2016-12-20 17:27  数字化校园\项目1.exe

     文件         95  2016-12-20 17:28  数字化校园\项目1.layout

     目录          0  2017-12-31 13:40  数字化校园

----------- ---------  ---------- -----  ----

              2619255                    8


评论

共有 条评论