若a为int型数据,并执行了"a='A'+1.6",则a的数值是多少
6个回答
展开全部
- -都定义为INT了 当然不会是浮点~~ A是CHAR型的话。。。输出以后是B的ASC码的值 66 INT自动取整 是将运算结果取整 不是楼上说的 变成了1 如果按楼上说的话 1.3+3.8 应该等于4 实际上是5
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案是66
因为楼主定义的int类型的变量a,a='A'+1.6,计算过程是这样的:'A'所对应的ASICC是65 即65+1.6=66.5 然后默认的执行了强制转换成int 即a=66。
但这种转化损失了精度。
因为楼主定义的int类型的变量a,a='A'+1.6,计算过程是这样的:'A'所对应的ASICC是65 即65+1.6=66.5 然后默认的执行了强制转换成int 即a=66。
但这种转化损失了精度。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
无法编译
'A'为65,int 型
1.6为double型
'A'+1.6结果为66.6,亦double型
无法赋值给int的a
'A'为65,int 型
1.6为double型
'A'+1.6结果为66.6,亦double型
无法赋值给int的a
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.6 默认是double类型
'A'=65
a='A'+1.6 这个编译过去了? a是整数呀(需要强行转换才能把double值付给int型的)
'A'=65
a='A'+1.6 这个编译过去了? a是整数呀(需要强行转换才能把double值付给int型的)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询