for years: nhiều năm
=> Từ cần điền diễn tả một hành động xảy ra trong quá khứ và kéo dài đến hiện tại nên ta dùng thì hiện tại hoàn thành: has collected
=> He has collected books for poor children for years.
Tạm dịch: Ông đã thu thập sách cho trẻ em nghèo trong nhiều năm.
Đáp án cần chọn là: A