使用固定指数 C# 将双值转换为科学记数法

Joh*_*ohn 5 c# double notation exponent

我有价值 double value = 1427799000;

我想将其转换为科学记数法,其中值指数必须始终为 10^11 (E+11)。

我试过跟随,但它不起作用。

Console.WriteLine(value.ToString("00.##E+11", CultureInfo.InvariantCulture));
Run Code Online (Sandbox Code Playgroud)

输出应该是: 0.14 x 10^11 or 0.14E+11

如何将任何双精度值转换为具有固定指数的科学记数法?这里的固定指数是 11。

myb*_*ame 5

double value = 1427799000;
Console.WriteLine(value.ToString("G2", CultureInfo.InvariantCulture));

//output: 1.4E+09
Run Code Online (Sandbox Code Playgroud)

通用(“G”)格式说明符

通用(“G”)格式说明符将数字转换为最紧凑的定点或科学记数法,具体取决于数字的类型以及是否存在精度说明符。

编辑:关于你的评论,你不能以你想要的方式显示科学记数法,它不是那样定义的!系数必须大于或等于 1 且小于 10。

对于数字 1.23*10^11 ->文章来源

第一个数字 1.23 称为系数。它必须大于或等于 1 且小于 10。

第二个数字称为基数。在科学记数法中它必须始终为 10。基数 10 总是以指数形式书写。在数字 1.23 x 10^11 中,数字 11 被称为十的指数或幂。

  • @John您的表示方式不正确,也不符合定义。 (2认同)