计算机悄悄干了些什么

 题目:

char a ; int b ; flat c ; double d ;
则表达式 a*b+d-c 值的类型为()
A float
B int
C char
D double

选啥呢,我选的B,为啥呢,因为我认为int 类型级别最高,当不同类型数据进行算术运算时,会进行从低到高类型的自动转换,所以无论哪种类型与int 进行算术运算,都会自动转换为int 类型再计算,所以选C;

答案:D

解析:

 a*b+d-c 

先计算a*b的数据类型,因为 a 为char与 b为 int ,int级别高于char,所以会先把a从char自动转换为int,再计算a乘b的值,a*b结果类型为int; 

再计算a*b+d,因为a*b结果类型为int, d为double,double级别高于int,所以会先把a*b从int 自动转换为double再与d相加,a*b+d结果类型为double;

再计算a*b+d-c, 因为a*b+d结果类型为double,c 为fl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值