选C don't have to 不必迫于做某事(表示不受客观条件的限制)
have not 和haven't没有区别,都是现在完成事态的否定用法。haven‘t是缩写
e.g.:I have finished my homework
变否定:i have not finished my homework
变疑问:have you finished your homework?
句子意思为 冬天没必要戴眼镜。
谢谢
C
A与B都是一个意思 把have当动词才能在have后面加not
C表示 不需要戴太阳镜 have to 表示“必须”否定在前面,用助动词do 加 not
D 表示需要戴太阳镜,根据题意,是冬天,所以应该是不需要戴太阳镜