西游记归来 国语电影:为什么我的 vc++6double型只有6-7位有效数字?

来源:百度文库 编辑:高考问答 时间:2024/04/27 22:34:26
大家看一下这个:
void main()
{
const double PI = 3.1415926535898; //定义圆周率常量PI
double radius; //定义圆半径变量
double area; //定义圆面积变量
double circumference; //定义圆周长变量
cout << "Enter radius : ";
cin >> radius;
area = PI*radius*radius;
circumference = 2.0*PI*radius;
cout << "Area of circle of radius " << radius << " is "<< area << " \n";
cout << "and its circumference is " << circumference;
cout <<"\n"<<PI;
}
为什么不管我输几位有效数进去,出来的都是float的精度,是我的配置有问题还是另有说法??
为啥常量定义了14位,输出只有6位?
为什么printf的lf格式输出不了6位以上?

printf输出格式可以指定输出位数
如:printf("%14.8lf",area);试一下,小数点后面是小数位数8,总长14位。