c語言浮點型轉換為整型怎麼轉換的

2021-03-11 10:56:41 字數 3572 閱讀 8000

1樓:匿名使用者

第一種是bai利用系統預設的轉換,du即將小數部分zhi截去dao,僅保留整數部分回,如3.6轉換答為3,-5.68轉換為5。

第二種是強制型別轉換,效果與第一種相同,如(int)(-6.666)為-6。

如有其他特殊要求,則需要程式設計解決。

2樓:匿名使用者

c語言中沒有四捨五入,將浮點型轉換成整形時,只保留小數點前面的數值

3樓:匿名使用者

float ftemp;

不要後面bai

的=0;因為一旦你分配du給ftemp了值,它zhi是無法通過dao鍵盤寫入的方式賦給

回的,因為空答間已經被佔用。這不是a=b+c這樣表示式的賦值。

暈,難道要我把源**給你你直接複製?

那就給你吧!

#include

void main()

隨便輸入乙個數,然後回車,看結果

4樓:程式猿3號

c語言復有以下幾種取整方法:

1、直接制賦值給整bai

數變數。如:

int i = 2.5; 或 i = (int) 2.5;

這種du方法採用的zhi是捨去小數部分,能dao用於你的問題。

2、c/c++中的整數除法運算子「/」本身就有取整功能(int / int),而下面介紹的取整函式返回值是double。整數除法對正數的取整是捨去小數部分,能用於你的問題。不過整數除法對負數的取整結果和使用的c編譯器有關。

3、使用floor函式。floor(x)返回的是小於或等於x的最大整數。如:

floor(2.5) = 2

floor(-2.5) = -3

4、使用ceil函式。ceil(x)返回的是大於x的最小整數。如:

ceil(2.5) = 3

ceil(-2.5) = -2

floor()是向負無窮大捨入,floor(-2.5) = -3;ceil()是向正無窮大捨入,ceil(-2.5) = -2。floor函式能用於你的問題。

5、int b = (int)a;//取整int c = (int)(a+0.5);//四捨五入

c語言的浮點型怎麼轉換為整型?

5樓:幻翼高達

c語言中,浮點型轉換為整型可以用:強制型別轉換、自動型別轉換,例如:(int)3.14、int a = 3.14。

1、強制型別轉換

強制型別轉換是通過型別轉換運算來實現的。其一般形式為:(型別說明符)(表示式),其功能是把表示式的運算結果強制轉換成型別說明符所表示的型別。

例如: (double) a 把a轉換為雙精度浮點型,(int)(x+y) 把x+y的結果轉換為整型。

2、自動型別轉換

(1)執行算術運算時,低型別(短位元組)可以轉換為高型別(長位元組);例如: int型轉換成double型,char型轉換成int型等。

(2)賦值表示式中,等號右邊表示式的值的型別自動隱式地轉換為左邊變數的型別,並賦值給它。

(3)函式呼叫時,將實參的值傳遞給形參,系統首先會自動隱式地把實參的值的型別轉換為形參的型別,然後再賦值給形參。

(4)函式有返回值時,系統首先會自動隱式地將返回表示式的值的型別轉換為函式的返回型別,然後再賦值給呼叫函式返回。

6樓:程式猿3號

c語言有以下幾種取整方法:

1、直接賦值給整數變數。如:

int i = 2.5; 或 i = (int) 2.5;

這種方法採用的是捨去小數部分,能用於你的問題。

2、c/c++中的整數除法運算子「/」本身就有取整功能(int / int),而下面介紹的取整函式返回值是double。整數除法對正數的取整是捨去小數部分,能用於你的問題。不過整數除法對負數的取整結果和使用的c編譯器有關。

3、使用floor函式。floor(x)返回的是小於或等於x的最大整數。如:

floor(2.5) = 2

floor(-2.5) = -3

4、使用ceil函式。ceil(x)返回的是大於x的最小整數。如:

ceil(2.5) = 3

ceil(-2.5) = -2

floor()是向負無窮大捨入,floor(-2.5) = -3;ceil()是向正無窮大捨入,ceil(-2.5) = -2。floor函式能用於你的問題。

5、int b = (int)a;//取整int c = (int)(a+0.5);//四捨五入

7樓:步成文赤豪

c語言中沒有四捨五入,將浮點型轉換成整形時,只保留小數點前面的數值

8樓:匿名使用者

float ftemp;

不要後面的=0;因為一旦你分配給ftemp了值,它是無法通過鍵盤寫入的方式

賦給的,因為空間已經被佔用。這不是a=b+c這樣表示式的賦值。

暈,難道要我把源**給你你直接複製?

那就給你吧!

#include

void main()

隨便輸入乙個數,然後回車,看結果

9樓:匿名使用者

可通過強制型別轉換或賦值過程中自動轉換。

強制型別轉換。c語言提供強制型別轉換符,其可表示為(型別),該操作符具有從右向左的結合型,用法示例為「(型別)變數」,則對應變數被轉換為括號中 的型別,因此想把浮點型轉換為整型時,括號中使用int即可:

如果直接把浮點型變數賦值給整型,其會自動轉換為整型:

但是注意當float型變數轉換為整型時,小數部分被捨棄,但不會遵循四捨五入的原則,如果浮點型別的值過大,超過整型所能容納的範圍,則結果是不確定的。

c語言 怎樣將無符號整型轉換成浮點型

10樓:匿名使用者

c語言中來

無符號整型轉源換成浮點型方法bai

如下:unsigned int x=123;

1、輸出強制轉換,du如:

printf("%f", x ); //這樣的輸出因為zhi%f與x的類dao型不同,導致輸出資料異常

printf("%f", (float)x ); //強制轉換成浮點型,可正確輸出

2、儲存到相應的變數中,如:

float fval;

fval=x ; //系統會隱式轉換 因float的有效數字最大為7位,所以,並不是所有整數都可以用float型別變數來表示,所以,最好使用double型別來儲存任意的整數

printf("%f", fval ); //輸出正常double dval;

dval=x ; //系統會隱式轉換

printf("%f", dval ); //輸出正常

11樓:匿名使用者

使用強制型別轉換,如:

int a;

(float)a就表示把int型別的a強制轉換成float型。

但是a一旦定義成int型,就不能改變a自身的資料型別。

12樓:谷歌三下也知道

乙個最簡單的轉換例子,希望能版

幫到你權

#include

void main()

c語言輸出浮點型資料輸出,C語言輸出浮點型資料輸出

在c語言中可以通過精度限定符來控制浮點數輸出的位數,精度限定符有乙個點號後跟乙個整數組成。其準確含義依賴於它所修飾的資料型別。示例如下 include int main include int main int argc,char argv include int main void sprintf...

c中怎麼把string型別轉換為float型或int型

c 中string是乙個定義的類,要將其轉換為float 或者 int 應先轉為 char 如 string int string str int i atoi str.c str string float string str float f atof str.c str 其中 c str 表示 ...

如何在c或c 中將單個字元型資料轉換為相應的數字型資料

把單個字元型資料轉換為相應的數字,只需用強制轉換符即可,不需任何函式,例如 char str a int x int str 這樣,x就等於a的ascii碼65。如果你是 char str 9 然後想得到9這個數字,而不是9的ascii碼,那麼只需要如下即可 int x int str 48 因為字...