用深度优先搜索判断
typedef struct
{char vex[Max];int arc[Max][Max];int vexnum,arcnum;
}MGraph;
bool visited[Max];
bool Judge(MGraph G)
{for(int v=0,v<G.vexnum,v++){visited[v]=false;}DFS(G,0);for(int v=0;v<G.vexnum;v++)if(!visited[v])return false;return true;
}
void DFS(MGraph G,int v)
{visited[v]=true;for(w=FistNeighbor(G,v);w>=0;w=NextNeighbor(G,v,w)){if(!visited[w])DFS(G,w);}
}