雷火电竞-中国电竞赛事及体育赛事平台

歡迎來到入門教程網(wǎng)!

C語言

當(dāng)前位置:主頁 > 軟件編程 > C語言 >

C語言double和float 實例分析

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊:

小數(shù)也稱實數(shù)或浮點數(shù)。例如,0.0、75.0、4.023、0.27、-937.198 都是合法的小數(shù)。這是常見的小數(shù)的表現(xiàn)形式,稱為十進制形式。

除了十進制形式,也可以采用指數(shù)形式,例如 7.25×102、0.0368×105、100.22×10-2 等。任何小數(shù)都可以用指數(shù)形式來表示。

C語言中的小數(shù)也有這兩種表示形式。在書寫時,十進制形式和數(shù)學(xué)中的一樣,指數(shù)形式有所差異。

在C語言中小數(shù)的指數(shù)形式為:

aEn 或 aen

a 為尾數(shù)部分,是一個十進制數(shù),n 為指數(shù)部分,是一個十進制整數(shù),E或e是固定的字符,其值為 a×10n。例如:

2.1E5 = 2.1×105,其中2.1是尾數(shù),5是指數(shù)。

3.7E-2 = 3.7×10-2,其中3.7是尾數(shù),-2 是指數(shù)。

0.5E7 = 0.5×107,其中0.5是尾數(shù),7是指數(shù)。

C語言中小數(shù)的數(shù)據(jù)類型為 float 或 double:float 稱為單精度浮點數(shù),double 稱為雙精度浮點數(shù)。不像整數(shù),小數(shù)的長度始終是固定的,float 占用4個字節(jié),double 占用8個字節(jié)。

10 是固定的,不需要在內(nèi)存中體現(xiàn)出來。正負號、指數(shù)(n)、尾數(shù)(a) 是變化的,需要占用內(nèi)存空間來表示。

float、double 在內(nèi)存中的形式如下所示:

輸出 float 使用 %f 控制符,輸出 double 使用 %lf 控制符,如下所示:

#include <stdio.h>
#include <stdlib.h>
int main()
{
  float a=128.101;
  float b=0.302f;
  float c=1.23002398f;
  double d=123;
  double e = 78.429;
  printf("a=%f \nb=%f \nc=%f \nd=%lf \ne=%lf\n", a, b, c, d, e);
  system("pause");
  return 0;
}

運行結(jié)果:

a=128.100998

b=0.302000

c=1.230024

d=123.000000

e=78.429000

對代碼的說明:

1) %f 默認保留六位小數(shù),不足六位以 0 補齊,超過六位按四舍五入截斷。

2) 將整數(shù)賦值給 float 變量時會轉(zhuǎn)換為小數(shù)。

3) 小數(shù)默認為 double 類型,加上后綴f才是float類型。

4) 由于內(nèi)存有限,小數(shù)的精度受限,所以輸出 a 時只能獲得一個近似數(shù)。

以上就是對C語言中double 和float 進行的詳細分析、比較,希望能幫助學(xué)習(xí)這塊內(nèi)容的同學(xué)。

上一篇:C語言 if else 語句詳細講解

欄    目:C語言

下一篇:Linux下用C++實現(xiàn)俄羅斯方塊

本文標(biāo)題:C語言double和float 實例分析

本文地址:http://www.jygsgssxh.com/a1/Cyuyan/2138.html

網(wǎng)頁制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語言數(shù)據(jù)庫服務(wù)器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有