1:构造一个无向图(用邻接矩阵表示存储结构)。
#include<stdio.h>
#define MAXMIN 40 //最大顶点数
#define GUD 0
typedef char VertexType; //顶点类型
//边的表结点
typedef struct{
VertexType vexs[MAXMIN];//顶点信息的数组
int arc[MAXMIN][MAXMIN];//邻接矩阵
int n,e;//实际顶点和边数
}MGraph;
//创建邻接矩阵
void Create(MGraph *G){
int i,j,k;
printf("输入顶点数和边数:");
scanf("%d%d",&G->n,&G->e);
getchar();
//输入顶点信息,创建顶点表
printf("创建顶点信息:");
for(i=0; i<G->n; i++){
scanf("%s", &G->vexs[i]);
}
//初始化矩阵
for(i=0;i<G->n;i++){
for(j=0;j<G->n;j++){
G->arc[i][j] = NULL;
}
}
getchar();
//请输入每条边对应的两个顶点的序号
printf("请输入每条边对应的两个顶点的序号:\n");
for(k=0