He ____ you more help, even though he was very busy. A. might have given B. might give C. may have given D. may give(全国高考,90-26) 标准答案为 A。但是我认为 C(may have given) 也是同样正确的。不知我的说法对否?
may have done 与 might have done 都表示推测过去可能发生的事情,在这一点上,它们是同义的:
-
He may (might) have missed the train. (CGEL) 他可能没有赶上火车。
-
Before giving up completely, let's look at the register. Someone may have changed his reservation. Yes, here's a telegram... You can have this gentleman's room for tonight. (Nelson, 300A) 暂时不要完全放弃,让我们先来看看登记簿。也许有人更改了预约。是啊,这有一封电报……你今天晚上可以住在这位先生预定的房间里。
-
I think my grandfather may have left me a message at the Mona Lisa—some kind of clue as to who killed him. Or why I'm in danger. Or what happened to my family. (Dan Brown, The Da Vinci Code) 我想祖父在《蒙娜丽莎》那里给我留下了信息——关于杀人凶手的信息,或是能解释为什么我处境危险的信息,或是关于我家庭的信息。(《达·芬奇密码》)
下面的英语试题是更有力的证明:
-
You ____ John Marshall last year when you were in England. He is over two metres tall. A. can have met B. may have met C. can meet D. may meet (Nelson, 250A)
-
Mary is very late. She ____. A. may miss her train B. may have missed her train C. must miss her train D. could miss her train
但是, might have done 还可表示“本该做而实际上并没有做”的意思。因此, 根据上面试题的语意, 应该选 A(might have given), 而不应该选 C(may have given)。参见 might 。