我怀疑答案错了,求证

img

没错,就是D
A应该是bool
B 45.6双精度,精度会丢失,应是45.6f;
C 单引号
D '1'的ASCII码是49,加上1就是50,变量k就被初始化为50

不选B 吗

B的话存在从 double 到 float的截断警告, 但是这只是警告不是报错(题目应该是指完全正确的?), C的话双引号只能括字符串, ‘a’这种单个字符用单引号, A中的boolean好像是C++中的用法? 不过倒是没见过这boolean