你選了A,這是不妥的,因?yàn)?/FONT> can 通常不與 be able to 搭配使用。
另外,我倒覺得除了C之外,D也是可以的。你之所以排除 D,也許是因?yàn)槠渲斜硎緯r(shí)間的副詞 now。
按照一般英語語法書的說明,此句屬錯(cuò)綜時(shí)間虛擬語氣,從句與過去時(shí)間相反,主句與現(xiàn)在時(shí)間相反,所以從句用過去完成時(shí),主句則用 should / would / might / could + 動(dòng)詞原形——這條規(guī)則在通常情況下,顯然是有效的。但是在實(shí)際運(yùn)用中,由于說話者要表達(dá)的意思的背景是相當(dāng)復(fù)雜的,所以例外的情況也是有的。
我們認(rèn)為,在沒有特定上下文的情況下,C和D都是可能的,只是兩者意思稍有點(diǎn)不同:
If I had studied English last year, I should be able to speak it now. 要是我去年學(xué)了英語的話,我現(xiàn)在應(yīng)該就會(huì)說英語了。
If I had studied English last year, I would have been able to speak it now. 要是我去年學(xué)了英語的話,我現(xiàn)在應(yīng)該是已經(jīng)會(huì)說英語了。
其實(shí),像上面第二句這樣的用法在英美詞典和語法書上隨處可見。如:
If he had taken my advice he would have been a rich man now. 如果他聽了我的勸告,他現(xiàn)在就會(huì)已經(jīng)是一個(gè)有錢人了。——摘自《牛津?qū)嵱糜⒄Z語法》第222節(jié) 回復(fù)時(shí)間:
2013/1/17 11:56:05 |