用邻接矩阵的 输出 矩阵 弧

来源:百度知道 编辑:UC知道 时间:2024/06/08 00:01:08
用C语言来实现,运行起来最好没有错误的

如下,c语言写的~~

#define MAXNUM 30
#define INFINITY 10000
#define FALSE 0
#define TRUE 1
#define BACK -1
#include "stdio.h"
#include <stdio.h>
#include "malloc.h"

//定义图的构造体
typedef struct{
char vexs[MAXNUM];
int edges[MAXNUM][MAXNUM];
int n,e;
}Mgraph;

//图的输入方法
void CreateGraph(Mgraph *g){
int i,j,k,w;
char ch;
printf("请输入结点数与弧数,如:3,2:");
scanf("%d,%d",&(g->n),&(g->e));
//初始化权值
for(i=0;i<g->n;i++){
for(j=0;j<g->n;j++){
if(i==j){
g->edges[i][j]=0;
}else{
g->edges[i][j]=INFINITY;
}
}
}
//获取权值
printf("\n为方便演示,结点内容默认为结点序号,无需输入。\n\n下面请输入弧及权值,例如:若点0到1有弧可达,且权值为10,则输入:0,1,10。注意:输入时不区分弧的顺序。\n");
for(k=0;k<g->e;k++){
printf("\t请输入第%d个弧及权值:",k+1);
scanf("%d