m0_63999697 2022-05-13 20:00 采纳率: 93.5%
浏览 22
已结题

怎么创建一个空无向图并返回指针?

给定无向图的数据类型如下
#define MAXVEX 100
typedef char VertexType;
typedef int EdgeType;
typedef struct {
VertexType vexs[MAXVEX]; //顶点表
EdgeType edge[MAXVEX][MAXVEX]; //邻接矩阵,即边表
int vertexNum,edgeNum;
}MGraph,*Graph;

请设计Graph createGraph()函数。
该函数创建一个空图,并返回图指针。

Graph createGraph()
{
    Graph g;
    for(int i=0;i<g->vertexNum;i++){
        g->vexs[i]=0;
    }
    for(int j=0;j<g->vertexNum;j++){
        for(int k=0;k<g->vertexNum;k++){
            g->edge[j][k]=0;
        }
    }
    return g;
}

运行错误了

  • 写回答

1条回答 默认 最新

  • m0_63999697 2022-05-17 16:42
    关注
    Graph createGraph()
    {
        Graph g;
        g=(Graph)malloc(sizeof(MGraph));
        for(int i=0;i<g->vertexNum;i++){
            g->vexs[i]=0;
        }
        for(int j=0;j<g->vertexNum;j++){
            for(int k=0;k<g->vertexNum;k++){
                g->edge[j][k]=0;
            }
        }
        return g;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月25日
  • 已采纳回答 5月17日
  • 创建了问题 5月13日