can do与be able to do的区别在于:can只表示有能力做,但实际上未必做,而be able to不仅是有能力做,而且是做了。
例:The fire spread through the hotel very quickly, but everyone _____ get out.(1997年全国卷)
A.had to B.would
C.was able to D.could
答案是C项,表达“每个人都从大火中逃出来了”这个结果,而could只能表达“有能力逃出来”,但结果未知。