C#學習日記06---資料類型 之 浮點數類型

來源:互聯網
上載者:User
數實值型別之浮點數類型:

在我們的日常生活中不僅有整數 ,還存在小數,在C#中小數有2種資料類型來表示 (單精確度)float 、(雙精確度)double。

他們的差別在於取值範圍與精度不同,電腦對浮點數的運算速度大大低於對整數的運算速度,對double型的運算速度低於對float的運算速度,如果在程式中大量的使用雙精確度類浮點數,將會佔用更多的記憶體單元,而電腦的處理任務也會更加繁重,但是用double類型的結果相對於float會更加精確,因此在對精度 要求不是很高的情況下我們可以採用float 類型。

單精確度(float)類型: 取值範圍在正負 1.5*10^-45 到 3.4*10^38 之間,精度為7到8位元字;

雙精確度(double)類型: 取值範圍在正負 5.0*10^-324 到 1.7*10^308 之間 精度為15到16位元字;

我寫個程式來區分下:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;    namespace Example  {      class Program      {          static void Main(string[] args)          {//同一類型在同一行定義時 用 , 分開                float a = 3.0f,b = 10.0f;  //這裡注意定義float時 加上f/F  應為預設小數是double類型              float c = b / a;        //相除               double d = 3.0, e = 10.0;              double f = e/d;              Console.WriteLine("float c={0}\ndouble f={1}",c,f);  //輸出  "\n"  表示換行              }      }  }

結果對比:

本著求實精神我認真數了一下 float 的結果有8位其中7位是數字;double 的結果有16位其中15位是數字3;

本著反思的態度我又反思到了float 與double 的屬性,float 的範圍不是在 正負 1.5*10^-45 到 3.4*10^38 之間 的嗎?至少可以表示38位元字啊,這才7位, double 至少可以表示300多位元字啊,這才16位,我寫的是 10/3 結果應該有38個3,或 300多個3 才對啊???為什嗎???是不是 在第9位與 第 17位的時候四捨五入了? 我又 寫了如下代碼:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;    namespace Example  {      class Program      {          static void Main(string[] args)          {                float a = 3.333334444333333f;  //第8位(小數點也算一位)開始是4,第9位是4                            double d = 3333333333333.3455555544;  //第16位是4,17位是5                            Console.WriteLine("float c={0}\ndouble f={1}",a,d);  //輸出  "\n"  表示換行              }      }  }

結果是這樣:

果然在float 的第8位是4捨去變為了0省略掉,double 的第16位本來是4,由於17位是5所以加1,後面為0省略。。

以上就是C#學習日記06---資料類型 之 浮點數類型的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.