天天看點

關于int資料轉換float資料出現輸出0.0000的問題

 在使用格式化輸出printf()中,會出現0的錯誤。

例如,int a=49;

printf(“%f”,a/2);

因為要輸出的是24.5  是以用%f  來輸出float類型,但實際上會輸出0.000 或一串很大或很小的數。

這是因為a為int類型,a/2的結果為 24  精度已經丢失,不管正确與否都是錯誤的資料。

這時候隻需要強轉a就可以解決這個問題。

printf(“%f”,(float)a/2);  -> 這樣輸出的結果就正确了。。