语法点:should / ought to 与 should have done (should & ought to)
should 和 ought to 都表示"应该",用来给建议、说明义务或谈论正确的做法,语气比 must 弱。两者意思几乎一样,ought to 稍正式,后面必须带 to。要说"过去本应该做某事,但实际上没做",就用 should have done / ought to have done,这种说法带有责备或后悔的语气。本课马戏团老板骑着小象上大街,警察说他 should have known、ought to have gone along a side street,正是在责备他没做该做的事。
结构
| 用法 | 肯定 | 否定 | 疑问 |
|---|---|---|---|
| 现在 / 将来的建议、义务 | We should arrest him. / He ought to go. | You shouldn't do that. / He oughtn't to go. | Should we arrest him? |
| 过去本应做而未做 | He should have known. / He ought to have gone. | You shouldn't have done that. | Should he have gone? |
要点:1) should 和 ought to 后接动词原形,没有第三人称 -s;2) should have + 过去分词 = 过去该做但没做;3) shouldn't have + 过去分词 = 过去不该做却做了。
课文中的例句
- [句 3] He should have known that the police would never allow this sort of thing. — should have known:他本应该知道,却没想到,带责备语气
- [句 4] A policeman approached Jimmy and told him he ought to have gone along a side street as Jumbo was holding up the traffic. — ought to have gone:本应走小街却走了大街
- [句 9] Of course, we should arrest him, but as he has a good record, we shall let him off this time. — should arrest:现在按理应该做的事,语气委婉
- [句 6] Fifteen policemen had to push very hard to get him off the main street. — had to 表示过去不得不做,与 should 的"应该"相区别
- [句 8] …it was fortunate that we didn't have to carry him. — didn't have to 表示过去不必做
补充例句
- You should take the presents to the hospital by car. — 你应该开车把礼物送到医院去。
- Jimmy ought to have asked the police first. — 吉米本应该先问问警察。
- We shouldn't have ridden the elephant down the main street. — 我们当时不该骑着大象走大街。
易错点
- ❌ He should to go along a side street. → ✅ He should go along a side street. — should 后直接接动词原形,不加 to;ought 才带 to。
- ❌ He ought have gone along a side street. → ✅ He ought to have gone along a side street. — ought 后面的 to 不能省。
- ❌ He should knew that. → ✅ He should have known that. — "过去本应该"用 should have + 过去分词,不能用过去式。
- ❌ He should has known. → ✅ He should have known. — 情态动词后一律用 have,不随人称变化。