虚拟语气 should have done 与 could have doneFive minutes earlier,we_____the last trainA, could have caught B ought to have caught 为什么选A 为什么不选B 如果有个should have caught 可以选吗 为什么

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/24 17:19:47

虚拟语气 should have done 与 could have doneFive minutes earlier,we_____the last trainA, could have caught B ought to have caught 为什么选A 为什么不选B 如果有个should have caught 可以选吗 为什么
虚拟语气 should have done 与 could have done
Five minutes earlier,we_____the last train
A, could have caught B ought to have caught 为什么选A 为什么不选B 如果有个should have caught 可以选吗 为什么

虚拟语气 should have done 与 could have doneFive minutes earlier,we_____the last trainA, could have caught B ought to have caught 为什么选A 为什么不选B 如果有个should have caught 可以选吗 为什么
must could should would might
这几个情态动词都可以用来表示对现在或者对过去的推测.
但他们表示的意思是有区别的,一般情况下不可以交换使用.
would 是最普通的陈述语气,如果你是客观的叙述一件事情,就可已选择这个词.
它的使用在条件句中很常见.如,If I hadn’t been ill,I would have finished the work.
must 和might放在一起区分比较容易分辨.
must 表示是的是十分肯定的推测,翻译成“一定”;might表示的是不太确定的预期,翻译成“可能”.
如,He musht have done it last night./He might done it last night.
could have done ,意思是“本来能够”
就是你题目中的这种用法:如果早五分钟,我们本来能够赶上末班车.
should have done,意思是“本应该”
比如你这句话可以延伸成为一个对话:
--Five minutes earlier,we could have caught the last train.
--Yes.We should have hurried up.
如果我们早五分钟,就能赶上末班车了.
是的,我们本应该快点.
这样说不知道你是否明白了.
should have done 和ought to have done差别不是很大,只是语气强弱之分,可以忽略不计.

should have done 译为“本应该”,意思是本应该这么做,却没有这么做。有些责备的语气。而could have done 译为“本可以”,意思是按照提供的条件去做的话,本可以怎么样,可是事实却是,你没有按照条件去做,也没有达到最终的目的。

楼上的对的
should have done 译为“本应该”,意思是本应该这么做,却没有这么做
我们能赶上火车 是could
by the way ought to have done 和 should have done 是一个意思

是这样的
could have done 中带有能力的意味,表示本来有能力去做,但没做到
而ought to have done 和should have done 中带有肯定的意味,ought to have caught 比should have caught 语气稍弱,但实际上没差异,表示本应该去做,而没去做,太绝对,所以要选A。