《強制型別轉化與浮點數的儲存問題》

2021-06-25 10:22:48 字數 625 閱讀 7323

強制型別轉化

格式:(資料型別)(表示式)

功能:把表示式的值強制轉化為前面所執行的資料型別。

例子:(int)(3.3+2.2) 最終值是5

(float)(6)        最終值是6.000000

求1+1/2+1/3........1/100:

#include

void main()

printf("%f\n",sum);}

/* 輸出結果是:5.187378 */

浮點數的儲存所帶來的問題

float和double都不能保證精確的儲存乙個小數,如輸入的的值是5.000000但它可能儲存的是4.999999。

舉例:有乙個浮點型變數x,如何判斷x的值是不是零?

if(|x-0.000001|<=0.000001)

x是零else

x不是零

為什麼迴圈更新的變數不能定義成浮點型?

舉例:#include

void main()

printf("%f\n",sum);}

此程式生成結果為5.187378,但會因為i的值的誤差而引起sum的值的變化。

C語言 強制型別轉化 浮點數的儲存

include intmain void 輸出結果 sum 5.187378 k 5.567890 總結 0 郝斌c語言自學教程 浮點型的儲存 所帶來的問題 1 除號 要求被除數或者除數其中乙個是浮點型,結果才能是浮點型 2 強制型別轉化 格式 資料型別 表示式 功能 把表示式的值強制轉化為前面所執...

浮點數的儲存

浮點數在計算機中的儲存格式 符號位 指數字 尾數字 符號位 指數字 尾數字 float 1位 8位 23位 共32位 double 1位 11位 52位 共64位 任何浮點數都可表示為 1.m 2e 符號位 sign 表示式中的 0表示正數,1表示負數。指數字 exponent 表示式中的e,指數字...

浮點數的儲存

浮點數 float或double 在儲存方式上都遵從ieee的規範,float遵從的是ieee r32.24,資料佔據32bit,double遵從的是r64.53,資料占用64bit。8.25 41 04 00 00 高位在前 0100 0001 0000 0100 0000 0000 0000 0...