C語言中給浮點數賦值問題c語言中將乙個浮點型賦值給整型時,會不會四捨五入?

2021-03-07 06:28:02 字數 2743 閱讀 1000

1樓:金色潛鳥

float d=0.5; // 這叫宣告和初始化。

願意寫 float d=0.5f; 也可以。

常數 0.5 預設 處理成 double 型。

0.5f 規定 它 是 float 型.

其實這不是什麼大問題。相對c語言中別的問題,這個可以完全忽略。

----------------------------float d; // 這叫宣告。

d=0.5; // 這叫賦值語句。

-------------------------如果你前面有過 typedef float float32例如:typedef float float32;

main()

2樓:鍋鋼

在c語言中,有單精度浮點數(float)和雙精度浮點數(double),給浮點數變數賦值,請見如下例子:

單精度浮點數變數的賦值:

float f=0.5f;//0.5f表明該常數為單精度數。

也可以寫成

float f=0.5;//0.5表明該常數為雙精度浮點數,當然,也可賦值於乙個單精度變數。

雙精度浮點數變數的賦值:

double d=0.5;//給乙個雙精度浮點數賦予0.5。

double d=0.5;/*給乙個雙精度浮點數賦予乙個單精度數,會自動將單精度數轉換為乙個雙精度數。*/

3樓:匿名使用者

float32是什麼東西啊?c語言中有這樣的關鍵字嗎?

4樓:

沒什麼不對啊?你覺得**有錯?

5樓:泥苗漢和璧

四捨誤入了

printf("%0.10lf",n);

這樣0.10

意思是保留小數點後10位

種種原因很那解釋

這應該與二進位制轉換有關

十進位制小數有時無法完全轉換為二進位制

你可以查一下進製轉換的資料就明白了

所以浮點型的後幾位就不準確了........

c語言中將乙個浮點型賦值給整型時,會不會四捨五入?

6樓:幻翼高達

c語言中將乙個浮點型賦值給整型時,不會四捨五入,會直接捨去小數部分的資料,也可以認為是執行了下取整運算。

將浮點數(單雙精度)轉換為整數時,將捨棄浮點數的小數部分, 只保留整數部分。將整型值賦給浮點型變數,數值不變,只將形式改為浮點形式, 即小數點後帶若干個0。注意:

賦值時的型別轉換實際上是強制的。

例如執行賦值後,無論5.4還是5.6都會變成5。

7樓:_夢幻陽光

不會的,不過可以寫乙個函式自己轉換啊

#include

int fun(float x)

int main()

列印的為3和4,c語言很靈活的,樓主想要什麼幾乎都能實現

8樓:匿名使用者

不會的,如int x; 如果有 x=4.78; 則x的值是4

9樓:匿名使用者

不會,後面的小數就直接沒了,只有整數部分了

採納我哦

10樓:匿名使用者

不會的啦,整型的話,1/2=0,而不是0.5或者1,但整型變成浮點型要強制型別轉換,不知這麼解釋明白不。?

11樓:龍__鳳

不會的,看程式的執行結果:

12樓:路過

你好,不會的。浮點型資料賦給整型時,浮點型就會被自動轉換成整型,整型只是整數部分。

希望能夠幫到你。

13樓:匿名使用者

不會,一般是給你強轉成整形了,小數字就沒了,四捨五入是不存在的

14樓:匿名使用者

不會,只會把整數部分賦給整型變數

15樓:匿名使用者

不會,比如float a=4.45 那麼 printf("%d",a);輸入為4,直接把小數點後面的數刪去,不是四捨五入

c語言中,將整型資料給浮點數變數賦值會出現什麼結果?

16樓:宿雨厭厭

如果沒bai

超出浮點數取值du範圍zhi,就正常

賦值dao

float num = 4; //合法

你可以試著執行專

下面的屬程式

float num1,num2;

num1 = sizeof(int);

num2 = sizeof(float);

printf("%f\n",num1);

printf("%f\n",num2);

17樓:

沒啥特別的結果,會自動資料型別轉換,還會報乙個warning

c語言中給float型變數賦值時需要在數值後加f嗎

18樓:匿名使用者

不加是double型別,double可以隱式轉換成float,所以可以不加,但是編譯器可能給你乙個警告。

19樓:gosunny小情緒

float型別的字面常量,後面需要加上f或者f來表示是乙個單精度浮點數。只所以專要這樣寫,是屬因為預設的浮點數常量都是double型別。

#include

int main()

c語言整型數賦值給浮點型的問題,c語言中將乙個浮點型賦值給整型時,會不會四捨五入?

b a 2 是這麼計算的 a是整型變數,2也是,因此計算被當成整型計算,得到整型結果0,然後發內現b是float型的,再將整容型結果0進行資料型別轉換賦值給b。因此應當將a 2算式中分子或分母轉換成float型就能正確計算了,比如 b float a 2 或b a 2.0 或b a b 2 c語言中...

c語言中怎樣判斷輸入的是整數還是浮點數

先存成字串,判斷有沒有小數點,再從字串格式化成整型或浮點型。include include include char strchr const char str,int ch int main int argc,char argv else system pause return 0 scanf s...

c語言如何把整型轉換成浮點數,C語言如何把整型轉換成浮點數?

程式猿3號 c語言有以下幾種取整方法 1 直接賦值給整數變數。如 int i 2.5 或 i int 2.5 這種方法採用的是捨去小數部分,能用於你的問題。2 c c 中的整數除法運算子 本身就有取整功能 int int 而下面介紹的取整函式返回值是double。整數除法對正數的取整是捨去小數部分,...