所以我試圖在c(IDE = DEV C++)中獲取pi的值,所以我在這裏使用long double,結果它給了我一整套的零 這裏是程序Pi in C language
int main()
{
long double rootOf3;
rootOf3 = (22.0/7.0);
printf("%lf", rootOf3);
system("pause");
return 0;
}
後,我發現了圓周率的值是不是在C精確和文件math.h.已經宣佈,當我試圖用這個代碼
int main()
{
printf("%f", M_PI);
printf("%e", M_PI);
printf("%lf", M_PI);
system("pause");
return 0;
}
得到i的值得到這些值
3.1415933.141593e+0003.141593Press any key to continue . . .
所以我的問題
1)什麼是在第一個程序錯誤,並使用我可以得到圓周率的值與上面的代碼長雙
2)是真的,在C PI值是不是準確?一個爲什麼我沒有得到在math.h中分配
感謝
閱讀更多關於[printf的(3)](http://man7.org/linux/man-pages/man3/printf。 3.html)。代碼'printf(「%e \ n」,M_PI);'etc ...閱讀關於variadic參數傳遞和提升'float'參數爲'double' –
由於其本質,Pi永遠不會被精確計算。 – alk
請查閱http://floating-point-gui.de/ –