单选题 Why are you still smoking? You______.
【正确答案】 B
【答案解析】解析:句意:你为什么还抽烟,你本应该戒掉的。should have done表虚拟,“原本该做但是没做(怀有埋怨或者责备的语意)”,是shall have done的过去时形式。ought to havedone无过去时。give it up动词加副词的短语,如果遇到代词,代词应放中间,若是名词短语则可放在中间或副词后面。