正在回答
6回答
同学你好,同学写的是将m+n的值强转为float类型的,float类型和整数类型的数值进行运算会保留小数位,所以结果是11.5
这里如果输出效果想要与效果图一致,就不需要强转为float类型。m和n的值是int类型,2也是int类型,int类型的数值进行运算结果还是int,会舍去小数部分,所以效果图上是11.0
有关代码的问题,建议同学下次以复制粘贴的形式进行反馈,方便老师进行测试
祝学习愉快~
慕无忌7047759
2021-07-01 11:55:28
int可以隐式转换float,强转前(m+n)/2为int类型值为11,会省去后面小数点,int赋值float后得到11.0,
如果进行float类型强制转换,就会保留后面小数点。
其实很简单
2021-06-21 22:02:10
1 | public static void main(String[] args) {<br> //将变量m的初值赋值为10,变量n的初值赋值为5<br> int m=10,n=5;<br><br> //变量m的值加3,n的值加5<br> m=m+3;<br> n=n+5;<br><br> //求m和n的平均值,并将结果存于变量p中<br> double p=(m+n)/2;<br><br><br> //求m的平方乘以n的平方,并将结果存于变量q中<br> double q=(m*m)*(n*n);<br><br><br> //将p和q的值打印输出<br> System.out.println("m和n的平均值为:"+p);<br> System.out.println("m的平方乘以n的平方为:"+q);<br><br> }<br> |
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧