首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

问个比较白痴的有关问题。

2013-04-20 
问个比较白痴的问题。。。signed short类型如何转换成float?代码如下:signed short a 256float b (float

问个比较白痴的问题。。。
signed short类型如何转换成float?
代码如下:
signed short a = 256;
float b = (float)(a/100);
printf("%.2f",b);
运行后显示是2.00,该怎么转换才能保留小数点后面的数?

[解决办法]
100修改为100.0
[解决办法]
float b = (float)(a/(float)100);
[解决办法]

引用:
100修改为100.0
正解,float b = a/100.0;即可,无需强转,编译器自动进行隐式转换
。a/100结果取整 2,如果是a/100.0结果就有小数部分2.560000
[解决办法]
a / 100 是整除,最后得到的肯定是整数2,然后转换为float变成2.00;
要得到2.56最简单的方法楼上已经说了,两种改法都可以。只不过100改成100.0之后得到的应该是double型,在这里没什么关系。总之要注意类型自动转换就是了。
[解决办法]
a / 100 是整除 ,float b = (float)a/100;
[解决办法]
引用:
引用:100修改为100.0正解,float b = a/100.0;即可,无需强转,编译器自动进行隐式转换
。a/100结果取整 2,如果是a/100.0结果就有小数部分2.560000




引用:
a / 100 是整除,最后得到的肯定是整数2,然后转换为float变成2.00;
要得到2.56最简单的方法楼上已经说了,两种改法都可以。只不过100改成100.0之后得到的应该是double型,在这里没什么关系。总之要注意类型自动转换就是了。



++
[解决办法]
100改成100.0,即可
编译器会自动帮你转换的!

热点排行