當前位置:首頁 » 編程語言 » c語言中double的范圍

c語言中double的范圍

發布時間: 2024-05-08 04:53:29

A. C中的float和double的有效數字和精度各是多少

float和double是有IEEE標準的,不是C語言定的,其它語言也一樣。
double型90%的情況下有效位是16位的10進制數據是對的。來一段lua程序:
local b= 9007199254740991
print("b="..string.format("%d", b))
for i=1,10 do
print("i="..i..",b+i="..string.format("%d", b+i))--列印的全是偶數
end
for i=1,10 do
print("i="..i..",b-i="..string.format("%d", b-i))--列印正確
end
由此可見,大於9007199254740991(2進制52位最大的數),從2^53開始誤差就大於1。

B. C語言中的double是最多多少位

雙精度實數,佔用位元組8。

有效數字15~16(因為二進制轉十進制問題)。

數值范圍-1.7*10負308次方~1.7*10的308次方。

當有效數字全部是整數時,即整數有15~16位。

C語言中,輸出double類型(雙精度實型)以及float類型(單精度實型)時,默認輸出6位小數(不足六位以 0 補齊,超過六位按四捨五入截斷)。double a = 1;printf("%lf ", a);輸出會是:1.000000

比如計算平均分,一到兩位小數就足夠了。可是有時六位又不夠,需要更多位小數,比如計算高精度平方根。這時可以用printf的格式控制。如果要輸出n位小數,那麼可以用%.nlf的格式。其中n為數字。

所在函數庫為【ctype.h】

int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否則返回0

int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或數字('0'-'9')

返回非0值,否則返回0

intisascii(int ch) 若ch是字元(ASCII碼中的0-127)返回非0值,否則返回0

intiscntrl(int ch) 若ch是作廢字元(0x7F)或普通控制字元(0x00-0x1F)

以上內容參考:網路-C語言函數

C. c璇璦涓鍙岀簿搴︽誕鐐規暟錛堝嵆double綾誨瀷鏁版嵁錛夌殑鍙栧艱寖鍥

鍙岀簿搴︽誕鐐規暟鍦ㄨ$畻鏈轟腑鐨勫瓨鍌ㄦ柟寮忎負錛
涓浣嶇﹀彿浣 s
11浣嶆寚鏁頒綅 E(縐葷爜琛ㄧず錛岃寖鍥翠負錛歟=-1024鍒1023錛
52浣嶅皬鏁頒綅 f
鍏辮64浣嶏紝8涓瀛楄妭
鎵琛ㄧず鐨勮勬牸鏁頒負錛1.f * 2^e 錛1.f 綰︾瓑浜2 (1.1111111111111111111...=2 )
鑳借〃紺虹殑鏈灝忔暟綰︾瓑浜 -2*2^1023=2^1024
鑳借〃紺虹殑鏈澶ц礋鏁扮害絳変簬 -2*2^-1024=-2^-1023
鑳借〃紺虹殑鏈澶ф暟綰︾瓑浜 2*2^1023=2^1024
鑳借〃紺虹殑鏈灝忔f暟綰︾瓑浜 2*2^-1024=2^-1023
褰撶劧錛屽彟鏈夎勫畾鍏0鏃朵唬琛0
鎵浠ワ細
璐熷煎彇鍊艱寖鍥-1.79769313486231570E+308 鍒 -4.94065645841246544E-324錛
姝e煎彇鍊艱寖鍥翠負 4.94065645841246544E-324 鍒 1.79769313486231570E+308銆

熱點內容
哈利波特不同伺服器有什麼不同 發布:2024-11-27 22:33:45 瀏覽:77
鎖ip伺服器 發布:2024-11-27 22:31:48 瀏覽:176
腳本刷精粹 發布:2024-11-27 22:30:31 瀏覽:991
電腦定時清理文件的腳本 發布:2024-11-27 22:27:49 瀏覽:996
安卓系統傳奇哪個好玩 發布:2024-11-27 22:26:17 瀏覽:253
oracle存儲過程重命名 發布:2024-11-27 22:12:51 瀏覽:547
串口伺服器幾個ip 發布:2024-11-27 21:58:21 瀏覽:325
麥芒5腳本 發布:2024-11-27 21:45:33 瀏覽:848
dnf龍貓腳本 發布:2024-11-27 21:45:15 瀏覽:959
macoutlook存儲位置設置 發布:2024-11-27 21:35:15 瀏覽:810