
用MathCeiling,通过向上进位取整函数。
例如:MathCeiling(324) 结果是33;MathCeiling(320) 结果是 32
与此对应的是向下舍位取整 MathFloor。
第一种方式 强制类型转换
double d=15;
int i=(int)d;
强制类型转换采用的是截位方式,把小数点后面的数字统统舍弃,也就是说不管小数部分是几,哪怕是19也要舍弃,转换完会是1。
第二种方式 使用Round函数进行转换
double d=16
int i = MathRound(d, 0);(保留0维小数就是取整)
第二种参数表示要保留的小数位数。
使用Round函数是四舍五入,而不是进行截位,保留小数点后面的数字。
例:MathFloor(38)//返回小于或等于指定数字的最大整数,结果为3;
MathRound(38)//将值舍入到最接近的整数或指定的小数位数,结果为4。
这两种转换方式要根据实际需要情况来进行转换。
强制转换 。例如:
double d=12356;
int k;
k = (int) d;
如果你想4舍5入:
if (d >=0) k = (int) (d+05); else k=(int) (d-05);
当然,double 型数值不能大得超过 int 的最大允许范围。
1、打开vc软件,新建一个空白的vc项目文件:
2、编写转换程序,首先添加头文件,在main主函数中定义int类型变量sum,count,再定义double类型变量todouble,并进行强制类型转换,强制转换的格式就是括号加要转换的类型,最后使用printf打印结果:
3、编译运行程序,查看转换的结果。以上就是C语言中Int和double转换的 *** 作步骤:
第一种强制类型转换
double
d=15;
int
i=(int)d;
这种方式的话采取的是截位,也就是不管小数部分是多少,统统舍弃,哪怕是19,转换完也是1
第二种
使用Round函数
double
d=16
int
i
=
MathRound(d,
0);(保留0维小数就是取整)
第二个参数表示要保留的小数位数
使用Round函数是四舍五入,而不是截位
使用哪种方式转换根据你的实际需要来在android开发过程中我们常常遇到数据类型的转换,其中double转int类型是最常见的 方法一:强制转换 int i ; double db; i = (int) db; 这种方法会丢失小数点后面的值 int i ; double db; i = (int)Mathpow(db2, n); 这种方法的好处是不会丢失
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)