That was not a good place for skating,you ________ your leg.A.can break B.could have broken我知道要选B但could have done不是指“可能已经”吗?总觉得翻译过来很别扭.

问题描述:

That was not a good place for skating,you ________ your leg.A.can break B.could have broken
我知道要选B但could have done不是指“可能已经”吗?总觉得翻译过来很别扭.

是虚拟语气,指:那不是一个溜冰的好地方,(如果你在那溜冰的话)你就会摔断你的腿的.实际上这个人并没有到那个地方溜冰,他可能想去,但是被劝告他的人制止了.所以用虚拟语气.could have done意为本会(其实没有)的意思!

这是虚拟语气,could have done与前面的was对应,翻译的时候不用考虑这些,直接译成“那个地方滑冰不安全,你可能会摔到腿的”。

That was not a good place for skating,you could have broken your leg.
首先,前半句是过去时,表示题目中的"you"已经去过那个地方去滑冰了.
could have done是对过去的虚拟语气,意思是:如果你去那个地方滑冰的话,有可能会摔到腿的.
这句话的场景可以这样理解.比如一个孩子去一个比较不安全的地方滑冰,他安全回来后,对他的妈妈说了这件事.虽然他没有受伤,但是妈妈还是会担心地说:那个地方不安全,你可能会摔到腿的.(事实是他已经安全回来,并没有摔倒腿,所以要用虚拟语气.)
希望这样的解释可以理解.

这里的could have done是表对过去的推测,