浮点数是什么?

时间:2012-05-21 14:18:20

标签: c# .net

什么是E+3?这到底发生了什么?我们可以在其他数据类型中使用此方法,还是只能在浮点中使用它?

static void Main(string[] args)
{
    double w = 1.7E+3;
    Console.WriteLine(w);
}

输出:1700

4 个答案:

答案 0 :(得分:14)

  

E notation

     

大多数计算器和许多计算机程序在科学记数法中呈现非常大且非常小的结果。因为像10 7 这样的上标指数不能总是方便地显示,所以字母E或e通常用于表示提升到幂的十倍(将写成“x 10 b < / sup>“)并且后跟指数的值。请注意,在此用法中,字符e与数学常量 e 或指数函数 e x 无关(混淆的可能性较小)与资本E);虽然它代表指数,但符号通常被称为(科学)E符号或(科学)符号,而不是(科学)指数符号(尽管后者也会出现)。出版物不鼓励使用这种表示法。


至于你的第二个问题:

  

我们可以在其他数据类型中使用此方法,还是只能在浮点中使用它?

请参阅C# spec

  

真实文字[允许其中E的数字文字的类型]用于写入floatdoubledecimal类型的值。< / p>

但是,在分配给Double之外的任何其他内容时,您必须适当地对文字进行强制转换或后缀,因为其中包含eE的任何文字都会被识别为{ Visual Studio中的{1}}。我找不到指定此行为的位置。

Double

答案 1 :(得分:13)

一般来说,这是指数/科学记数法......

1.7E + 3 = 1.7×10 ^ 3 = 1700

答案 2 :(得分:5)

E + 3表示小数位移到右侧

3次

1.7 - &gt; 17.0 - &gt; 170.0 - &gt; 1700.0

答案 3 :(得分:1)

E+3 = 10^3, so 1.7 * 10^3 = 1700