英语语法问题求解。。。谢谢大家了?

1.You should do some shopping last weekend. 上周末时你应该去买些东西。2.You should study hard. 你应该努力学习。请问大家,问题1:这两句话里的should都是情态动词吧?问题2:第一句里的should应该是shall的过去式的用法吧,这里的情态动词should应该是一个过去式。而第二句里的should是他作为情态动词独立可以表示“应该”的用法吧?是一个现在时。
2026年09月27日 14:19
有2个网友回答
网友(1):

你很棒,意识到了第一个句子中should是shall的过去式用法,不过,should在这里并不是情态动词,而是构成时态的助动词。当should用于情态动词的时候,他是没有时态变化的,只有他当助动词的时候,才是shall的过去式。

另外我们来讲讲第一个句子should用于过去时的时候,一般是用于表示“过去本应该做什么但实际上没做”这种虚拟语气的场合,正确的语法结构应该是“主语 should have 动词过去分词”,就比如你给的句子,应该是 You should have +做了什么。另外,do a shopping这种表达方式并不正确,因为shopping是不可数名词,所以一般会用 do a lot of shopping,当然直接用go shopping更直接,所以第一个句子正确表达应该是:You should have gone shopping last weekend.(上周末你应该去购物的。)

第二个句子理解是正确的,should是一个情态动词,表示的是“现在或者未来应该”。

网友(2):

第一句话 last weekend, 你应该用过去式。should have done some shopping.
should 不能用在过去。除非你在转述。不能看作 shall 的过去式。就像在现代英语里,你永远不能用 might 当做 may 的过去式用来描述过去的情况,除非转述。