A) I have been to ...; Has already left.
B) It has ... gone; already
C) did ... go; go to
D) did ... yes; go to
Hello, you used did in your question, but it's actually ok. Where did John go to the library? But the question is not a question, but an answer. And the matching of the answers leads to the answer being b, not c or d.
This is because (simple past tense) usually emphasizes a certain point in the past, and is usually used with adverbial of time indicating the past (time point), such as last week, an hour ago; ; It cannot be used with * * * of the table (time period). For example, the answer can be that he went there an hour ago. No problem, but he can't use it for an hour after he went there. And (when completed) can be used with adverbials of time (time point) and (time period) in the table, such as he has been there for an hour; ; He was there an hour ago. There is no problem with both usages. Answers C and D are not suitable, because the answer sentence limits the use (perfection).
As for the difference between already and already gone, other netizens have already mentioned it. In most cases, you have gone (not yet returned) and you have (not yet returned), but this is not absolute, because you can also mean (not yet returned). In fact, in the sentence, he has been there for an hour and hasn't left, so he hasn't come back. , but it's basically gone (not back yet, on the way). So by contrast:
Where has John been to the library? ? He has been there for an hour.
Where did John go? The library. ? He has been there for an hour.
If we compare these two sentences, the Chinese translation is different:
Where did John go? Library. He has been gone for an hour.
Where did John go? Library. He has been there for an hour.
Has gone is usually used to go to a place that has not yet returned, or on the way to a place that has not yet arrived. So obviously, he has been there for an hour. It took 1 hour to get to the library. So you usually say he went to the library. I'm on my way to the library.
So rewrite this sentence:
John has been to the library. ? He has been there for an hour.
John went to the library. He has been gone 1 hour. )
John went to the library. ? He has been there for an hour.
John went to the library. He has been there for 1 hour. )
Semantically, B is correct, but A is not.
But using did is no problem, but the answer needs to be changed to:
Where did John go? The library. ? He went there an hour ago.