全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include stdio.h#define max_num 20typedef enum DG,DN,UDG,UDNGraphkind;typedef struct ArcCellint adj;char *info;ArcCell,AdjMatrixmax_nummax_num;typedef structchar vexsmax_num;/顶点向量 AdjMatrix arcs;/定义邻接矩阵int vexnum;/定义图当前的定点数int arcnum;/定义图当前的弧数 Graphkind kind;/图的种类标志MGraph;void CreateDG_DN(MGraph *G);void CreateUDN_UDG(MGraph *G);void CreateGraph(MGraph *G);int LocateVex(MGraph *G,char c);void DisplayGraph(MGraph *G);void main()MGraph G; CreateGraph(&G); DisplayGraph(&G);void CreateGraph(MGraph *G) printf(输入图的类型(DG,DN,UDG,UDN对应选择0,1,2,3):); scanf(%d,&G-kind); switch(G-kind) case DG:CreateDG_DN(G);break; case DN:CreateDG_DN(G);break; case UDG:CreateUDN_UDG(G);break; case UDN:CreateUDN_UDG(G);break; default:break; void CreateDG_DN(MGraph *G)int i,j,k,w; char v2,c10;if(G-kind=0)printf(CreateDG(有向图)n);elseprintf(CreateDN(无向图)n);printf(输入顶点数和边数(弧数):n); scanf(%d%d,&G-vexnum,&G-arcnum); printf(顶点数为%d,边数(弧数)为%dn,G-vexnum,G-arcnum); printf(输入每个顶点的数据:n); scanf(%s,c);/输入顶点信息 for(i=0;ivexnum;i+)G-vexsi=ci;for(i=0;ivexnum;i+) for(j=0;jvexnum;j+)G-arcsij.adj=0; G-=NULL;/可以自己定义赋值/初始化矩阵for(k=0;karcnum;k+) printf(输入邻接第%d条边(弧)两顶点:,k+1);scanf(%s,v);/printf(输入边权值:);/scanf(%d,&w);i=LocateVex(G,v0);j=LocateVex(G,v1);G-arcsij.adj=1;if(G-kind=1) G-arcsji=G-arcsij;/无向图是对角矩阵void CreateUDN_UDG(MGraph *G)int i,j,k,w;char v2,c10;if(G-kind=3)printf(CreateUDN(无向网)n);elseprintf(CreateUDG(有向网)n);printf(输入顶点数和边数(弧数):n);scanf(%d%d,&G-vexnum,&G-arcnum);printf(顶点数为%d,边数(弧数)数为%dn,G-vexnum,G-arcnum);printf(输入每个顶点的数据:n);scanf(%s,c);/输入顶点信息for(i=0;ivexnum;i+)G-vexsi=ci;for(i=0;ivexnum;i+)for(j=0;jvexnum;j+)G-arcsij.adj=0;G-=NULL;/可以自己定义赋值/初始化矩阵for(k=0;karcnum;k+) printf(输入邻接第%d条边(弧)两顶点:,k+1);scanf(%s,v);printf(输入边(弧)权值:);scanf(%d,&w);i=LocateVex(G,v0);j=LocateVex(G,v1);G-arcsij.adj=w;if(G-kind=3) G-arcsji=G-arcsij;/无向图是对角矩阵int LocateVex(MGraph *G,char c) int i;for(i=0;ivexnum;i+) if(G-vexsi=c) return i; return -1;void DisplayGraph(MGraph *G) switch(G-kind) case DG:printf(有向图邻接矩阵,其中1表示弧段联通,0为非联通n);break; case DN:printf(无向图邻接矩阵,其中1表示边联通,0为非联通n);break; case UDG:printf(有向网邻接矩阵,其中非零值表示各相邻接弧段的权值n);break; case UDN:printf(无向网邻接矩阵,其中非零值表示各
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 妇科专科疾病护理|临床查房专用教学资料
- 《零基础掌握中医养生功法|护理操作标准化实训课件》
- 新能源电池安全使用与维护手册
- 环保意识及行动指南,环保行动小学主题班会课件
- Unit 2 My friends Part B(Period 6)同步练-2026-2027学年人教PEP版四年级上册英语
- 消毒隔离制度
- 心理咨询师临床心理咨询技巧指南
- 增强安全意识创建平安校园小学主题班会课件
- 公路工程项目施工环境安全管理预案
- 新疆维吾尔自治区2026年中考语文试卷(含答案)
- GB/T 1040.3-2026塑料拉伸性能的测定第3部分:薄膜和薄片的试验条件
- 2026年宁波慈溪供销集团公司下属单位公开招聘工作人员8人笔试备考题库及答案详解
- 2026年(完整版)国家GCP培训考试题库及参考答案(完整版)
- 水利工程建设项目生产安全重大事故隐患直接判定清单(指南)
- 2026年甘孜市交通运输系统事业单位人员招聘考试备考试题及答案详解
- 2026年成都中考语文测试题及答案
- 2025年北京第二次高中学业水平合格考地理试卷真题(含答案详解)
- 2026译林英语三年级下册期末试卷含听力材料和答案
- 2024版公路工程工艺工序标准化手册-交通分册
- 2026年广西壮族自治区南宁市八年级地生会考试卷题库及答案
- 2026年多重耐药菌医院感染预防与控制培训课件
评论
0/150
提交评论