回覆列表
-
1 # 使用者940819740885790
-
2 # 使用者3109039768347355
控制小數位數就是透過輸出格式說明符來規定的。舉例說明如下:float f1=3.1415926;float f2=1234.1415926;float f3=124.1;printf("%3.4f", f1); // 輸出結果為:_ _ 3.1416 ( _ 表示空格)printf("%3.4f", f2); // 輸出結果為:1234.1416printf("%3.4f", f3); // 輸出結果為:124.1000printf("%3.4f",f);中的3是控制f的整數部分按3位的固定位寬輸出;4是按四捨五入的準則保留4位小數。注:如果整數部分不足3位,則在前面補空格,超過3位,則按實際位數輸出;如果小數部分不足4,則在後面補0
-
3 # 使用者668967480081533
很簡單,假如你有一個float型變數a,其值為1.23456,而你只想保留三位小數,也就是希望得到1.235,只需要令: a = (int)(1000.0 * a + 0.5) / 1000.0 即可。如果要保留四位小數,就把1000都換成10000,依次類推。
C語言的的資料型別的精度限定了你不可能得到20位小數的精度。
一些特殊的語言版本也許有其特定的資料型別來提高精度,例如C#的decimal類可以達到28位的精度。