数据结构实验报告4(电大)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
深圳电大实验报告4(学科:数据结构)
班级:11秋计算机科学与技术学号:1144201250620 姓名:文达通得分:________ 实验名称:实验四图的存储方式和应用
4.1 建立图的邻接矩阵
【问题描述】
根据图中顶点和边的信息编制程序建立图的邻接矩阵。
【基本要求】
(1)程序要有一定的通用性。
(2)直接根据图中每个结点与其它结点的关联情况输入相关信息,程序能自动形成邻接矩阵。【实验步骤】
(1)运行PC中的Microsoft Visual C++ 6.0程序,
(2)点击“文件”→“新建”→对话窗口中“文件”→“c++ Source File”→在“文件名”
中输入“X1.cpp”→在“位置”中选择储存路径为“桌面”→“确定”,
(3)输入程序代码,
实验4.1 建立图的邻接矩阵
图4-1
设计程序代码如下:
#include
#define MaxVertexNum 5
#define MaxEdgeNum 20
#define MaxValue 1000
typedef int VertexType;
typedef VertexType vexlist [MaxVertexNum];
typedef int adjmatrix [MaxVertexNum] [MaxVertexNum];
void Createl(vexlist Gv,adjmatrix GA,int n,int e)
{
int i,j,k,w;
printf("输入%d个顶点数据\n",n);
for(i=0;i for(i=0;i for(j=0;j { if(i==j) GA[i][j]=0; else GA[i][j]=MaxValue; } Printf(“输入一条边的两端点序号i和j及边上的权w\n”); printf("输入%d条无向带权边\n",e); for(k=1;k<=e;k++){ scanf("%d%d%d",&i,&j,&w); GA[i][j]=GA[j][i]=w; } } void main() { vexlist vl; adjmatrix a; Createl(vl,a,5,8); }