我的问题不懂希望有老师能给我解答一下,为什么我的输出结果是11.5。

我的问题不懂希望有老师能给我解答一下,为什么我的输出结果是11.5。

这个代码的结果是 11.5,我看其他同学的代码n和m用的都是整型变量,后面转用双精度浮点类型,真的不懂因为我看结果是小数点后一位,是单精度的啊,

public class 测试一下好不好用 {

public static void main(String[] args) {

float m=10,n=5;

m+=3;

n+=5;

float p=(m+n)/2;

float q=(m*m)*(n*n);

System.out.println("m和n的平均值为:"+p);

   System.out.println("m和n的平均值为:"+q);

}

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕阿满 2018-12-24 09:45:35

同学你好,题目要求定义整型变量m和n并初始化,而同学定义的是浮点数,所以在求平均和平方和是按浮点数计算的,所以小数点后面有值,如果将m和n定义为int型,计算结果为11.0.

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快!

lee_李 2018-12-23 16:58:51

23/2  值为11

23.0/2 值为11.5

你定义的是浮点型所有结果有小数吧

再者定义单精度时最好在字面值后面加个 F或f   默认是双精度

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师