Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 浮点中的E是什么?_C#_.net - Fatal编程技术网

C# 浮点中的E是什么?

C# 浮点中的E是什么?,c#,.net,C#,.net,什么是E+3?这里到底发生了什么?我们可以在其他数据类型中使用这种方法,还是只能在浮点中使用 static void Main(string[] args) { double w = 1.7E+3; Console.WriteLine(w); } 产出:1700 大多数计算器和许多计算机程序以科学记数法表示非常大和非常小的结果。因为像107这样的上标指数不能总是方便地显示,字母E或E通常用来表示十次幂(写为“x10b”),后面是指数的值。注意,在这种用法中,字符e与数学常数e

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

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

大多数计算器和许多计算机程序以科学记数法表示非常大和非常小的结果。因为像107这样的上标指数不能总是方便地显示,字母E或E通常用来表示十次幂(写为“x10b”),后面是指数的值。注意,在这种用法中,字符e与数学常数e或指数函数ex无关(与大写字母e不太可能混淆);虽然它代表指数,但这种符号通常被称为(科学)E符号或(科学)E符号,而不是(科学)指数符号(尽管后者也出现)。出版物不鼓励使用此符号


关于你的第二个问题:

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

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

实数字面值[其中允许使用
E
的数字字面值类型]用于写入
浮点型
双精度
型和
十进制
型的值

但是,在分配给除
Double
以外的任何对象时,必须适当地强制转换或添加后缀,因为在Visual Studio中,任何包含
e
e
的文本都会被识别为
Double
。我找不到指定此行为的位置

float f1 = 7E1;     // Compile error. Needs F suffix (7E1F)
decimal d1 = 8E2;   // Compile error. Needs M suffix (8E2M)
double d2 = 9E3;    // Works.

int overninethousand = (int)9E3 + 1; // Works

一般来说,这是指数/科学符号


1.7E+3=1.7x10^3=1700

E+3表示小数点向右移动3次


1.7->17.0->170.0->1700.0

不同语言的答案相似,但不完全相同。请选择一种编程语言并将您的问题限制在它上面。E+3==10^3==10*10*10==1000。因此,1.7*1000=1700。它被称为“工程符号”,afaikI想知道为什么有人会喜欢1.7E+3而不是1700。@Rob:我不知道asp,但对于他选择的所有其他语言,答案实际上是相同的。@BlueM-因为对于更大或更小的数字,它更紧凑,例如。,1.7E+30比在1700000000000000000中键入或读取29个零更容易。(如果你知道你要处理的是一系列大的数字,那么坚持一种符号风格通常会更容易。如果我知道我需要的所有数字最多只有四到五位数,我就不会使用E符号。)对不起,我最初把他的数字误读为1.73E+3,我的错,修正了。
E+3 = 10^3, so 1.7 * 10^3 = 1700