I _______ these books for three years.
【正确答案】 C
【答案解析】由句子后面的for three years可知本句时态应用完成时,又由于动词buy是非持续性动词,不能用于完成时态中,所以要转化为have had的形式。