c中怎麼把整型數轉換成浮點型的比如123要變成0 123用float aa

2021-04-22 02:19:47 字數 5134 閱讀 5531

1樓:匿名使用者

float a=1;為什麼是對的不是要float a=1.0才對嗎 編譯器啟用了: 隱式型別轉換. 不過整型和浮點型的儲存結構不同, 在某些情況下很容易出亂子, ,ehtxrv

2樓:天空飛翔

你這123是整,1000是整,123/1000是0,再強制轉換不是那個0.000000麼,你用a=123*0.001試試看

c語言中,如何將整型變為浮點型。比如int x=123,我要輸出0.123。

3樓:匿名使用者

double xs = (double)123/1000;

4樓:匿名使用者

float xs = 123/1000.0;

printf("%0.3f\n", xs);

5樓:匿名使用者

double xs=123*0.001 //這樣即可,它會自動完成型別轉換

c語言中怎麼將一個整形陣列轉化為一個float或者int型別數字比如 int a[5]={1,2,

6樓:gta小雞

int convert(int a,int n) //n為陣列bai

元素個du數

7樓:滄海雄風

為啥不直接zhi存到char 陣列呢?

#include

#include

int main()

;int k=0,i=0,len=0,tmp=0;

len = sizeof(a)/sizeof(a[0]);

for (i=0;idaok += a[i]*(int)pow(10,len-i-1);

}printf("k=[%d]\n",k);

return 0;

}k=[12345]

press any key to continuefloat你怎麼辦

?小數點也存專

屬int陣列裡嗎?

8樓:匿名使用者

如果遇到copyint a=你想怎麼整合?

變成12995?

我給你說思路,好久沒用過c了,具體語法都忘了,這樣,你把陣列裡面的資料追加到字串裡面.

int a=;

string str="";

for(int i=0;i

現在的str裡面就裝著字元型別的"12995"瞭然後int new_a=atoi(str);//這個函式是嘗試將字串"1234"轉變為整數型1234

需要注意,一般這類函式都有異常的可能,萬一你給的字串無法轉換,會報異常,你捕獲一下.

解釋清晰麼?

9樓:聽不清啊

int a[5]=;

int k,i;

for(k=i=0;i<5;i++)

k=k*10+a[i];

printf("%d\n",k);

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

10樓:幻翼高達

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)函式有返回值時,系統首先會自動隱式地將返回表示式的值的型別轉換為函式的返回型別,然後再賦值給呼叫函式返回。

11樓:程式猿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);//四捨五入

12樓:步成文赤豪

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

13樓:匿名使用者

float ftemp;

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

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

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

那就給你吧!

#include

void main()

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

14樓:匿名使用者

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

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

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

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

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

15樓:匿名使用者

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

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

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

16樓:匿名使用者

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

17樓:匿名使用者

float ftemp;

不要後面bai

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

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

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

那就給你吧!

#include

void main()

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

18樓:程式猿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語言 怎樣將無符號整型轉換成浮點型

19樓:匿名使用者

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 ); //輸出正常

20樓:匿名使用者

使用強制型別轉換,如:

int a;

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

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

21樓:谷歌三下也知道

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

幫到你權

#include

void main()

C語言的浮點型怎麼轉換為整型c語言中將一個浮點型賦值給整型時,會不會四捨五入?

c語言中,浮點型轉換為整型可以用 強制型別轉換 自動型別轉換,例如 int 3.14 int a 3.14。1 強制型別轉換 強制型別轉換是通過型別轉換運算來實現的。其一般形式為 型別說明符 表示式 其功能是把表示式的運算結果強制轉換成型別說明符所表示的型別。例如 double a 把a轉換為雙精度...

c 中,如何把long轉換成string

使用baistringstream會方便du一點。zhi include include include using namespace std int main stringstream是好方法。不過c 裡包含iostream頭就行了,這裡stdio.h沒用 用庫函式 atol include i...

怎麼把cad圖註記轉換成arcgis中的註記

把cad中的文字匯入為annotation,再標註之即可.arcgis10如何將註記轉成dwg的標註 老會員了,發帖請選擇好分類 arcgis10中的文字註記如何轉成cad 如果是annotation的話,直接使用工具就可以轉了。選擇輸入的檔案 cad格式,輸出的檔案 如果是label的話,要先把l...