static void Main(string[] args)
{
float a = 1.0f;
float b = 7.842357E-10f;
float c = 3.170807E-9f;
Console.WriteLine("(a+b)+c= "+(a+b)+c);
Console.WriteLine("a+(b+c)= "+a+(b+c));
Console.ReadLine();
}输出:
(a+b)+c = 13.170807E-09
a+(b+c) = 13.955043E-09
{
float a = 1.0f;
float b = 7.842357E-10f;
float c = 3.170807E-9f;
Console.WriteLine("(a+b)+c= "+(a+b)+c);
Console.WriteLine("a+(b+c)= "+a+(b+c));
Console.ReadLine();
}输出:
(a+b)+c = 13.170807E-09
a+(b+c) = 13.955043E-09
解决方案 »
- 关于GridView的编辑问题。
- 求指点
- c# 如何不用重启修改指定网络连接(网卡)的IP地址
- 如何将字符数组转为String类型?
- 菜鸟求一句SQL查询语句!```
- 请问如何获取 98 系统的 MAC ??????????????????????????
- C#求助!将excel表导入到server 2000
- FreeCommunication Ver 2.8 已经出炉,请大家捧场,多谢!
- XML文件是干吗用的
- ?急急!菜鸟问题?布尔运算问题?在线等待!!!!
- GDI+绘图,为什么Form1_Paint(object sender,PaintEventArgs e)事件没有执行?
- 。net线程问题有什么基本的入门资料推荐啊
你可以参考
http://msdn.microsoft.com/zh-cn/library/system.single.aspx后面的说明。
即:7.842357*10的-10次方
F是float的缩写 如 float a=12.56f
表示12.56是float类型的 不是double类型!!!
float b = 7.842357E-10f;
float c = 3.170807E-9f;
Console.WriteLine("(a+b)+c= {0}", (a + b) + c);
Console.WriteLine("a+(b+c)= {0}", a + (b + c));
Console.ReadLine();
呵呵,因为(a+b)得1,而 "(a+b)+c= "+(a+b)+c 自然就是 13.170807E-09 啦。你想让一个字符串跟两个浮点数相+,只能有这个结果。
Console.WriteLine("(a+b)+c= "+((a+b)+c));
Console.WriteLine("a+(b+c)= "+(a+(b+c)));
“+”顺序执行所以先字符串结合了,而不是数字相加