1樓:我愛你我的菜
sqrt函式返來回值是double。表達源式包含隱性轉換,規則就是盡量保證資料精度不丟失。
對程式設計人員來說,double 和 float 的區別是double精度高,有效數字16位,float精度7位。但double消耗記憶體是float的兩倍,double的運算速度比float慢得多,c語言中數學函式名稱double 和 float不同,不要寫錯,能用單精度時不要用雙精度(以省記憶體,加快運算速度)
2樓:五岳持觴
系統默bai認小數是double,所以你呼叫dusqrt時,其實是這zhi個用法double sqrt(double),返還的dao是double型別版,double型別和其他類權
型運算的時候,系統會自動把數都變成double型別進行運算,返還的也是double。double是雙精度浮點數,一般佔8個位元組,float是單精度浮點數,一般佔4個位元組,int也是4個位元組。一般運算的時候,精度低的會向精度高的轉化,double>float>int
float佔4個位元組,也就是32位,儲存方式是1位符號位(1表示負數,0表示正數)+8位階碼(移碼表示,也就是2的幾次冪)+23位有效位(原碼表示)
double佔8個位元組,也就是64位,儲存方式是1位符號位+11位階碼+52位有效位。
請問c語言中的float和double型別有什麼區別?什麼叫做單精度和雙精度?
3樓:碧血玉葉花
c語言中 單精度型
和bai雙精度型 指兩種du 型別 的 浮點數zhi
。單精度型dao 即回 float 型, 有效數字約10進製答7位
雙精度型 即 double 型, 有效數字約10進製15位
所以能描述的數值精度不同。
c語言 資料 用 ieee 754 國際標準。float 型 用 4 位元組存放,double 型 用 8 位元組存放。
single precision 2進製: 數符1位,指數8 位,尾數 23 位
double precision 2進製: 數符1位,指數11 位,尾數 52 位
單精數值範圍: ± ~10的-44.85次方 到 約 10的38.53次方
雙精度數值範圍 ± ~10的-323.3 次方 to 約 10的 308.3次方。
float a=1.234567;
double b=1.2345678901234;
-------------
10%3 整除取餘數,得 1。
1 用 float 和 double 表示,精度沒有區別。 a=(float)(10%3); b=(double)(10%3);
強制轉換 要帶 小括號。
4樓:某某匿名網友
sizeof(float)是4,sizeof(double)是8,精度高,有效數字多
C語言問題為什麼選B過程求解大學C語言,為什麼選B,求解!
首先 是轉義字元,所以 的結果就是 其次,7s是指輸出字串佔7位,所以前方有空格。7s意思就是輸出後抄面的字串,襲 長度7 這裡如果bai7小於後du面字串長度則沒什麼意zhi義,dao還是按字串原樣輸出,如果大於後面字串,則會在字串前補空格 字串原本的雙引號是不會輸出的。所以a和c都不對,是轉義符...
C語言問題為啥會出錯,c語言執行出錯什麼原因
陽光的雷咩咩 printf d z 璐人釔 printf d z 這樣 c語言執行出錯什麼原因 歡樂多 for i 0,sum 0 i 10 i,sum i 另外main 打錯了 編譯沒有錯是因為你寫的mian函式的語句符合c規範,而連結有錯誤是因為c必須有一個入口函式或叫主函式main 而你這裡卻...
C問題,13題為什麼選A,這題為什麼選C
因為 在結構體中 只有a中的定義方式是正確的 bcd 都有錯誤 結構體具體定義方式可以參考書籍 這題為什麼選c 選c。觀察題目,每幅圖里有且只有兩個面積相等形狀相同的圖形 如下圖所示 d項中間那兩個梯形面積肯定不相等,因為左右兩邊的長方形的寬都不相等。23題為什麼不選b選c。實驗b只能證明二氧化塘不...