.But for their help,we_____the program in time.

问题描述:

.But for their help,we_____the program in time.
选项:A.con not finish
B.will not finish
C.had not finished
D.could not have finished
请给我讲的详细一点,

选择D
译为“要不是有他们的帮助,我们就不会及时完成这项工程.”
这是对过去的虚拟,表示与过去的事实相反的假设时,条件状语从句的谓语动词用“had+过去分词”,主句中的谓语动词用“would(should,could,might)+have+过去分词” 例如:
If you had taken my advice,you wouldn’t have failed in the examination.
补充:
1.表示与现在事实相反的假设时,条件状语从句中的谓语动词用“过去式(be的过去式用were)”.而主句中的谓语动词用“would(should,could,might)+动词原形” .例如:If he had time,he would attend the meeting.
2、表示与将来事实相反的假设时,条件从句和主句所用的谓语动词 与“表示与现在事实相反的假设”的谓语动词相同,或者条件从句中用“were to (should)+动词原形”,例如:
If it were to rain tomorrow,the meeting would be put off.
3.当条件状语从句表示的行为和主句表示的行为所发生的时间不一致时,动词的形式要依据它所表示的时间来调整.
理解方法:
条件状语从句比说话者的语言所指的时态晚一个时态,主句时态根据条件状语从句时态来定,就是在条件状语从句时态条件下加上would(should,could,might),但是动词或助动词遇到would(should,could,might)就要变回原形.
希望能对你有所帮助.