2012-04-18 125 views
1

我需要使用long double來劃分,大約爲1/10^23,但是當我使用printf檢查數字時,數字會被截斷。有誰知道我如何看到完整的號碼?例如:爲什麼這個long double打印不正確使用printf?

long double a = 1; 
long double b = 3; 
printf ("%Lf", a/b); 

,但我得到:

0.333333 

例如,我想顯示像小數點後6個位數here

+1

你的意思是你想看到無限多的3個? – cnicutar 2012-04-18 20:18:48

+0

@cnicutar至少是長整數的80位,這只是一個例子 – mihajlv 2012-04-18 20:19:37

+0

'.3333333 ...'由於浮點數的精度有限而永遠不會顯示。但是,您可以告訴'printf'顯示多少位數。 – cHao 2012-04-18 20:21:05

回答

3

%f格式打印完整號碼。您可以使用%.df打印d位數字。或者更好的是,使用%.dg來使大/小值可讀。