20、若变量a是int类型,并执行了语句:a=‘A'+1.6;,则正确的叙述是( D )。 A

20、若变量a是int类型,并执行了语句:a=‘A'+1.6;,则正确的叙述是( D )。
A20、若变量a是int类型,并执行了语句:a=‘A'+1.6;,则正确的叙述是( D )。
A) a的值是字符C B) a的值是浮点型
C) 不允许字符型和浮点型相加 D) a的值是字符‘A’的ASCII值加上1

为什么答案是D,而不是B,1.6不是浮点型吗?

听谁说的答案是D,a = ‘A’+ 1.6; 编译不报错“可能损失精度”? 这四个选项没有正确的答案,C也是错误的,正确的答案是 等号右边是double和char计算,左边是int,所以会发生强转,编译报错损失精度
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-12-29
你要看一下 基本类型之间的转换了, 1.6 会被强制转换为1
第2个回答  2017-11-21
答案就是D好吧? 不会报错,强转1.6为1然后加上A的ASCI 65 结果为66
第3个回答  2016-12-29
a是int型,所以结果转成了整型