If in a depth-first traversal of a graph $G$ with $n$ vertices, $k$ edges are marked as tree edges, then the number of connected components in $G$ is $n-k$ as each connected component of $l$ vertices gives $l-1$ tree edges. i.e.,
$$\displaystyle k = \sum_{i=1}^d l_i -1 = n - d,$$
where $d$ is the number of connected components in $G.$ So, $d = n - k$ and option A is false.
Option B is true and C is false as we can use BFS for cycle detection and though the time complexity of BFS is $\Theta(|V| + |E|),$ we can do this in $\Theta(|V|)$ as once a cycle is detected we can stop the BFS and this should happen within $O(|V|)$ time.
Option D is true.