99问答网
所有问题
C语言中对于浮点数进行(int)转换时,计算机是按照四舍五入呢?还是只取整数部分?
如题所述
举报该问题
推荐答案 推荐于2017-09-25
是只取整数部分的。
也就是,可能是1.999999999
然后转换为int就是1,所以
浮点数向int转换,会丢失精度。
为了避免这个,建议如果想取到整数部分。
可以使用
float b;
int a;
a=(b+0.5);
这样写的话,就是四舍五入。
如果
写成
a=b.
可能有
0.99999999999
被截断,
a就是0的情况。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/WBBBz7jBX.html
其他回答
第1个回答 2010-05-26
#include <stdio.h>
main()
{
int a1,a2;
float b=5.6,c=3.3;
a1=b;
a2=c;
printf("%d,%d",a1,a2) ;
}
通过这个程序你就可以知道是取整
第2个回答 2010-05-26
取整
相似回答
C语言取整是4舍5入?还是
截断取整
答:
C语言中
进行取整操作时,采用的是截断取整的方式。这意味着,当一个
浮点数进行取整时,
无论小数
部分是4还是
5,都会直接去掉小数部分,而不会进行
四舍五入
。比如,如果你计算的是5.95,那么取整结果就是5。这种取整方式在编程中非常常见,尤其是在需要快速处理数据,或者在某些算法中需要精确控制数值的情...
C语言中
什么运算
只取整数部分,
什么时候不但取整,还要
四舍五入??
发现...
答:
取整要看类型的自动转换了,,比如a和b都是整形数据,那么a/b的结果就一定是整形。结果就
取整数部分,
如果其中有一个是浮点型,那么结果就是浮点型,但是不会
四舍五入,
如果需要四舍五入那么应该写成a/b+0.5.自动转换的顺序是char,short
,int,
float,double,越往后优先级越高 ...
c语言中
将一个
浮点
型赋值给整型
时,
会不会
四舍五入?
答:
结论是,
当在C语言中将浮点型数值赋值给整型变量时,确实不会进行四舍五入
,而是直接丢弃小数部分,执行的是下取整操作。这种转换并不是简单的四舍五入,而是按照整数的规则进行截断。例如,浮点数5.4和5.6在赋值给整型后,都会变为5,只保留整数部分。具体来说,无论是单精度浮点型还是双精度浮点型...
浮点数
强制
转换
成整型为什么
只取整数部分
答:
浮点数
可以存储小数部分,整数只能存储整数,float a =0.123; int b =0;b =
(int)
a; //这样整型变量只能取a的
整数部分,
如果你想把浮点变量的小数 部分也保存,比如a=0.123;想b=123,那么就这样;b=
(int)
(a*1000);然后运算b的时候记住b需要除1000才是实际的值。
c语言中
将一个
浮点
型赋值给整型
时,
会不会
四舍五入?
答:
c语言中
将一个浮点型赋值给整型时,不会
四舍五入
,会直接舍去小数部分的数据,也可以认为是执行了下取整运算。将
浮点数(
单双精度
)转换
为整数时,将舍弃浮点数的小数
部分,
只保留
整数部分
。将整型值赋给浮点型变量,数值不变,只将形式改为浮点形式, 即小数点后带若干个0。注意:赋值时的类型转换...
c语言中
的
取整
函数
int
语句怎么用?
答:
这个操作并不是通过函数实现的,而是
C语言
的强制类型转换。强制
浮点数转换
为整数的规则为
,只取浮点数
的
整数部分,
无条件舍去小数部分。形式为
(int)
float_number 于是 (int)1.3 的结果为1。(int)2.9999的结果为2。另一种常见的取整需求为
四舍五入
到整数,可以通过 (int)(float_number+0.5)的...
C语言中取整
是怎么取
答:
在实际编程中,根据需求的不同,可以选择不同的取整方法。直接使用强制类型转换适用于快速舍去小数部分的情况;而对于需要
四舍五入
的场景,则可以采用加0.5再取整的方法。在处理
浮点数时,
还需特别注意浮点数的精度问题,以确保计算结果的准确性。总之,
C语言中取整
的方法多样,应根据具体需求选择合适的...
c语言
:
int
型的强制类型
转换是
按
四舍五入
吗?
答:
作为函数
,INT
函数指数据库中常用函数中的“向下取整函数”。常用来取一个数中的整数部分。
Int是
将一个数值向下取整为最接近的整数的函数。为取整函数。意思是将被
转换数
直接截取
整数部分,
不
进行四舍五入
运算。例如:
int(
123.456);//取值为123 int(-123.456);//取值为124 int(1234.56);//取值...
...强制
转换
成
int
类型是
,是
小数位
四舍五入还是只
保留
整数?
求解...
答:
int强制
转换是
不保留小数的。ceil是向上
取整,
floor是向上取整,这两个函数返回值是double类型的
c语言中
没有
四舍五入
函数,需要使用时可以自己定义下。include <math.h>#include <stdio.h>// 自定义四舍五入宏#define ROUND(x)
(int)
(x + 0.4999999999999999)double round(double x, int d) /...
大家正在搜
相关问题
c语言:int型的强制类型转换是按四舍五入吗?
C语言中,double型转成int型是用的四舍五入还是直接取...
C语言中如何对浮点数进行四舍五入?
C语言中,为什么(int)f结果为5,小数点后面不需要四舍五...
C语言编程 、对输入的任意一个数按照四舍五入法取整?
C语言中什么运算只取整数部分,什么时候不但取整,还要四舍五入...
C语言中经常需要强制转换成整型,如(int),1/2,等等,...
c语言中将一个浮点型赋值给整型时,会不会四舍五入?