By the time you arrive home,I _____ for several hours,so please don't make a noise when you come in.[A] shall be sleeping [B] shall have slept [C] shall sleep [D]shall have been sleeping为什么选D?清翻译整句

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/03 01:30:37

By the time you arrive home,I _____ for several hours,so please don't make a noise when you come in.[A] shall be sleeping [B] shall have slept [C] shall sleep [D]shall have been sleeping为什么选D?清翻译整句
By the time you arrive home,I _____ for several hours,so please don't make a noise when you come in.
[A] shall be sleeping [B] shall have slept
[C] shall sleep [D]shall have been sleeping
为什么选D?清翻译整句

By the time you arrive home,I _____ for several hours,so please don't make a noise when you come in.[A] shall be sleeping [B] shall have slept [C] shall sleep [D]shall have been sleeping为什么选D?清翻译整句
句意“你回家的时候 我已经睡下好几个小时了 所以你进来的时候请不要发出太大的声音”
因为是“已经睡下好几个小时”所以用have been 表示已经...了

等你到家的时候,我应该已经睡了几个小时了,所以你进来的时候不要发出声音

by the time 后面一般都要加完成时,意为“到……为止”,have been doing表示过去的动作延续到现在并继续发生到未来,have done表示动作的完成,不过从句意出发,应该选D,整句的意思是“到你回家的时候,我可能已经睡了好几个小时了,所以当你进来的时候请你不要发出噪声。...

全部展开

by the time 后面一般都要加完成时,意为“到……为止”,have been doing表示过去的动作延续到现在并继续发生到未来,have done表示动作的完成,不过从句意出发,应该选D,整句的意思是“到你回家的时候,我可能已经睡了好几个小时了,所以当你进来的时候请你不要发出噪声。

收起

美语里是说 I would've been sleeping for several hours.
翻译: 我会在你到家几个小时前就睡着了, 你回来的时候别吵醒我。
既然是睡着了当然要用完成时, would/shall是假设, 因为还没有实际发生。

到你回家的时候,我应该已经一直睡了好几个小时(一直在睡),所以当你进来的时候不要发出噪声
D