1樓:匿名使用者
double型別保留小數有兩種情況:
1 在輸出時保留兩位小數:
用printf通過格式字元即可控制小數的保留。
如double a = 1.234;
printf(".2lf",a);
會輸出1.23
2 在執行過程中結果保留兩位小數。
可以藉助轉為整型,及乘除運算實現。
如double a = 1.235;
a = ((int)(a*100+0.5))/100.0;
運算結果,a=1.24.
2樓:滄海雄風
11.1
1.12
1.123
1.1235
1.12346
1.123457
1.1234568
1.12345679
1.123456789
1.1234567891
1.12345678912
1.123456789123
1.1234567891235
1.12345678912346
1.123456789123457
1.1234567891234568
press any key to continue#include
main()
c語言中,float型和double型變數如果不指定寬度,應分別保留小數點後幾位?????
3樓:匿名使用者
double與float的區別在於在記憶體中存放資料時佔用的記憶體不一樣,前者8位元組,後者4位元組,也就是前者儲存的小數位數比後者多一倍。
舉例說明對於1.9999996666,按照float輸出,結果可能為1.999999,如果按照double可能為1.
999999。因為c語言預設輸出小數位數都取6位,這時候看起來沒有區別,但是如果你進行格式控制,比如使用%.10,即小數保留10位,float輸出結果為1.
9999990000,而double輸出結果則為1.9999996666
c語言編寫程式,對一個double型資料進行四捨五入,要求保留兩位有效小數,求演算法。
4樓:跪著作揖
例如double型的資料為a=5.1413,程式如下:
#incloud
main( )
這時候printf輸出的
專結果將是5.14。
擴充套件資料屬
:
c語言編寫程式,對double型資料進行四捨五入,保留三位有效數字,程式如下:
這裡以b=8.8888
#incloud
main( )
這時候printf輸出的結果將是8.889。
5樓:
推薦的方法:首先將該數存入double型別的變數中,然後將該變數乘以100(小數點後移
回2位),加上0.5,再強制取整,最
答後除以100.0(小數點前移2位)即得到了結果。
表示式如下(double變數為i):i = (int)(i*100+0.5)/100.0
使用printf輸出時,如果要保留兩位小數輸出,請使用%.2f或%.2lf佔位符
c語言裡,double型別的資料可以精確到小數點後幾位?
6樓:匿名使用者
"%lf"預設只顯示6位小數,如果想顯示更多請指定:例如"%0.16lf"
精度位不夠自動四捨五入,沒辦法去掉。只有增加精度顯示
7樓:匿名使用者
十進位制的15或16位有效數字,因此精確到小數點後最多有15或16位。
8樓:匿名使用者
這個我記得跟系統的位數有關吧,還有你是以lf 的格式列印出來的,這2個一樣嗎?
c語言控制double型輸出小數點保留尾數的疑惑,求大大神們進來看下,急用
9樓:_奧丁信使
double res=(int)n;
printf("%.nlf",res);
強制轉換型別,會有警告,但一般不用理會
望採納。
10樓:
#include
void main()
輸出結果為:1123.12
c語言輸入一個double型別資料,要求將該數保留一位小數,第二位進行四捨五入,並將結果輸出。
11樓:始秀榮婁卯
推薦的方法bai:首先將該數存入double型別du的變數中,然後將該zhi變dao量乘以100(小數點後移2位),加上回0.5,再強制取整答,最後除以100.
0(小數點前移2位)即得到了結果。
表示式如下(double變數為i):i
=(int)(i*100+0.5)/100.0使用printf輸出時,如果要保留兩位小數輸出,請使用%.2f或%.2lf佔位符
c語言中怎麼保留小數2位,C語言中如何保留一位小數點
浦雁真棋 這是由printf 這個函式的輸出格式決定的,後面的表示格式,f表示以小數形式輸出單 雙精度數,在沒有規定位數時預設為輸出6為小數,若規定了位數,則例如 m.nf則表示輸出一共為m位,其中小數佔n位,而你這個 並沒有規定小數點後有多少位,故輸出6位 卻竹青迮鵑 把printf 2f n d...
c語言,double型別的變數使用scanf 函式賦值後再
c語言中double輸入輸出,都用 lf 進行格式化,是否寫成了 f,這個是float型別。include int main 2.字元定義如下 字元 對應資料型別 含義 d i int 接受整數值並將它表示為有符號的十進位制整數,i是老式寫法 o unsigned int 無符號8進位制整數 不輸出...
c如何將float型別數值保留兩位小數
我叫啥 程式例程如下 double x 6.50000000000 float y float.parse x.tostring console.writeline y.tostring f2 以上程式將x值賦給y,y保留兩位小數。 果建翼 你要知道,float是浮點數,無法精確表示一個數值。所以你...