4/8如何输出0.5

img


问一下大家就像图片上那样4/8为啥会出来0啊?因为%d是整数吗?那四舍五入不应该是1吗?为啥换成%f或者%lf是0.000000而不是0.5?如何才能输出4/8=0.5啊?

首先你的第一个问题是因为整数除整数,并不是四舍五入,而是保留整数部分,如4/8=0.5,整数部分就是0
要想输出0.5,你的把类型定义成float,在输出的时候用%f输出即可
有啥问题欢迎提问
效果:

img

img

printf("%f", (float)a / b); ,这样就实现输出:0.500000

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^