如果我添加2双数据类型值,结果四舍五入并打印.我如何得到精确的双精度输出
本文关键字:何得 输出 双精度 打印 数据类型 2双 添加 四舍五入 结果 如果 | 更新日期: 2023-09-27 18:14:43
我需要添加双值并显示结果。但是结果值是错误的
class Program
{
static void Main(string[] args)
{
int i = 4;
double d = 4.0;
string s = "HackerRank ";
int i1 = 12;
double d1 = 4.0;
string s1 = "is the best place to learn and practice coding!";
int sum = 0; string s2 = string.Empty;
sum = sum+i + i1;
s2 = s2 + s + s1;
Console.WriteLine(sum);
Console.WriteLine("{0}+{1}={2}",d,d1,(d+d1).ToString());
Console.WriteLine(s2);
Console.ReadLine();
}
}
输出快照在这里
我的期望输出是4.0+4.0=8.0
但是输出值是舍入的。谁能提供这个问题的原因和解决方案?
试试这个
Console.WriteLine( String.Format("{0:0.0}", d + d2));
如果您想以x.xx格式显示输出,您可以使用:
Console.WriteLine("{0:F2}+{1:F2}={2:F2}",d,d1,d+d1);
尝试在每个double上使用ToString()
Console.WriteLine($"{d.ToString("G1")}+{d1.ToString("G1")}=(d + d1).ToString("G1")});
使用
Console.WriteLine("{0:F}+{1:F}={2:F}",d,d1,d+d1);
"F"是定点格式说明符。您还可以根据需要通过将"F"更改为"F2,F3等"来指定所需的小数位数,或者将其保留为"F",以便它可以根据变量返回输出。