将float类型的转换为int类型!
要求用C语言实现,不要调用库函数gcvt();
感兴趣的一起商讨一下!
将float类型的转换为int类型!
要求用C语言实现,不要调用库函数gcvt();
感兴趣的一起商讨一下!
强制转换会导致float类型的精度丢失..
大概写了个程序.能实现float转换成int.
#include <stdio.h>
void main()
{
float a=1.2345f,b;
int c=(int)a;
b=a-c;
while(b>0)
{
a*=10;
c=(int)a;
b=(float)a-c;
}
printf("%d\n",c);
}
while(b>0) { a*=10; c=(int)a; b=(float)a-c; }
前面写那个程序 在这里我看不懂了 能不能解释一下
简单的就是b=(int)a
考虑到精度的问题,就b=(int)(a+0.00001)
如果考虑四舍五入,则b=(int)(a+0.5)
强制类型转换,如
float a=2.331;
int b;
b=(int)a;