Prove that no graph has exactly $2$ spanning trees.

Then here is more detailed reasoning that there is no simple graph that has exactly two spanning trees.

  1. If a graph is not connected, then it has $0$ spanning trees.

  2. If the graph is connected and has no cycles then the graph is a tree. In this case the graph has exactly one spanning tree. This tree is the graph itself.

  3. If graph $G$ is connected and has cycles, then it has a spanning tree $T$, which is obtained by removing some edges of $G$. Let $e$ be an edge of graph $G$ which is not included in the tree $T$. Then the graph $T+e$ has exactly one cycle. This cycle has at least two more edges besides $e$. Let these edges be $e'$ and $e''$. Then $T'=T+e-e'$ and $T+e-e''$ are ostensive trees of $G$. Thus we have at least three different spanning trees $T$, $T'$, $T''$ of graph $G$.

Since any graph with non-empty set of vertices has one of these three types, we proved that there is no simple graph with exactly two spanning trees.