C#double怎么转换成int?

C#double怎么转换成int?,第1张

用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); 这种方法的好处是不会丢失


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12895129.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-28
下一篇2025-08-28

发表评论

登录后才能评论

评论列表(0条)

    保存