您的位置:首页 > 职场人生

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

2007-09-01 02:48 323 查看
写出float类型与零比较的判断语句

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: