如有inta=11,则表达式(a ×1/3)的值是3 为什么?

如题所述

第1个回答  2015-07-09
首先要弄清运算顺序,此题应先计算a*1,得到结果后再/3
下面开始计算:
1)a为int类型,1也为int类型,因此最后得到结果也是int类型,为11
2)11/3,11为int类型,3也为int类型,最后结果也为int类型,结果为3
关于int类型的除法运算:
记住一点:不要想小数和点,要用商几余几的思路去思考(如5/2,结果不是2.5,而是2余1)
两个int类型的数据相除最后得到的就是商。如果想取到余数将运算符改为%,如果想得到小数,需要将数据类型改为浮点型(如double)
如有问题请追问
第2个回答  2015-07-09
/这个符号代表除,a*1/3=11/3=3*3+2 除是取整的,如果取小数的话那不成double类型的了,
%这个代表取模,也就是去余数a*1%3=11%3=3*3+2,结果为2追问

我弄错了

追答

就是3啊 我下面那个是取模的

本回答被提问者采纳