@K ANKITH KUMAR, in that case options $(A),(B) \; and \; (D)$ will be true.

Since , graph is acyclic(circuit-less) , connected,undirected and unweighted. So , It must be **Tree**.

Now, if we apply DFS , then resulting tree will have the same structure as original tree , only difference is , resulting tree will be rooted on that node for which we have applied DFS.

Since , **There is exactly one path or unique path between every pair of vertices in ****tree****.** So , shortest path will also be unique b/w every pair of vertices in a tree. In case of cyclic graph , there must be 2 paths b/w 2 vertices. So , one path may be longer than other path and if DFS traversal follows that path then it will give wrong result but it is not the case with tree.

For Example , PFA !

Here , we can find shortest path from every other node to $B$ through parent pointer. For example , for example , we have to find shortest path from $B$ to $H$ , then using DFS traversal , it will be $B\rightarrow D\rightarrow H$ , Now using parent pointer , we can go back to B as $H\rightarrow D\rightarrow B$ and we will find the length of it. So, option (B) will be true in that case.

Similarly , to find the distance b/w any 2 node , we will check the children of one node , if destination node is not found then check its siblings and if again not found then will check children of grandparent.we repeat this procedure until we find the destination node for which we are finding shortest path. so option (A) is also true.

We can also find the longest path in a tree. check here and here. So, $(D)$ will also be true in that case.