這是我的計劃:C++程序1.4.3錯誤數
#include "stdafx.h"
#include <iostream>
using namespace std;
double areaofcircle(double r)
{
return 3.14 * r * r;
}
int main()
{
cout << areaofcircle(5);
}
我應該得到的「78.5」的輸出,但我不斷收到「78.512」。到底是怎麼回事?! 我也試過浮動,但我仍然得到相同的輸出。
也只是一個側面的問題,我真的需要添加「返回0;」到主要功能?
還有一個問題,我是否需要寫「using namespace std;」在每個功能裏面,或者我可以把它寫在一切之外,就像我一直在做的一樣。
可能的重複http://stackoverflow.com/questions/2100490/floating-point-inaccuracy-examples – Aiias 2013-03-10 23:56:56
http://stackoverflow.com/questions/554063/how-do-i-print-a-double-使用全精度使用cout的值 – 2013-03-10 23:57:11
嘗試將'3.14'更改爲'3.14d' – Patashu 2013-03-10 23:57:46