若定义:int a=8,b=5,c;执行语句c=a/b+0.4;运行后为什么c的值是1?请教哪位给出详细解答

日期:2022-03-19 05:45:38 人气:1

若定义:int a=8,b=5,c;执行语句c=a/b+0.4;运行后为什么c的值是1?请教哪位给出详细解答

你这个问题其实就是一个类型转换的问题的。
首先是你的A,B,C都是定义成了INT型。
然后在做A/B的时候得出来的结果值就是1了。然后和0.4相加的结果本来应该是1.4,但是呢,由于你把C给定义成了INT型,所以呢,只有进行四舍五入了。把0.4给舍弃掉了。所以得出来的结果就是1了。
实际上就是进行了一个隐式的类型转换的。
这种情况在实际当中一定要多注意的。稍不注意就会出错的
    A+
热门评论