C# float 与零比较(南京某公司面试题)

写出float类型与零比较的判断语句

<script type="text/javascript"><!-- google_ad_client = "pub-4334685396432654"; //468x15, 创建于 07-12-5 google_ad_slot = "3722935453"; google_ad_width = 468; google_ad_height = 15; //--></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>
float  x = 0.111F ;
if (x >=- float .Epsilon && x <= float .Epsilon)
return   " 0 " ;
else
return   " 不等于零 " ;

c#中浮点变量的赋值

C#里面给float变量赋值时,有一种特殊情况;语句

float y = 5.2;  // 不会被编译!

将产生一个编译器错误,因为类似3.5这样带有小数部分的数字常量会被C#认为是拥有更高精度的double值,所以编译器将因精度损失而拒绝执行。要进行这样的赋值,必须显式地把浮点常量转换为float值:

float y = (float) 3.5;  // 没问题;进行了转换。

或者,也可以使用后缀F,强制编译器把赋值语句右边的常量看作浮点值:

float y = 3.5F;  // 可以,我们指示了该常量

                    // 应被当作浮点值处理。

还有一种选择是直接使用double变量而不用float变量来表示浮点数。在SRS应用中,无论何时要声明浮点变量,我们都会使用double来代替,这样可以避免类型转换操作。

一个好方法:声明浮点变量就用double

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值