曾经有一道题让我很恼,如下,其最后圆柱体积的小数点后的取值是与前方有所不同的,详见烟大OJ
/*Description
设圆半径r,圆柱高h 求圆周长C1、圆面积Sa、圆球表面积Sb、圆球体积Va、圆柱体积Vb。用scanf输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 PI=3.14
Input
两个浮点数,r和h
Output
圆周长C1、圆面积Sa、圆球表面积Sb、圆球体积Va、圆柱体积Vb。保留两位小数,每个结果后换行。
Sample Input
1.5 3
Sample Output
C1=9.42
Sa=7.07
Sb=28.26
Va=14.13
Vb=21.19
*/
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
float r,h;
double PI=3.14;
cin>>r>>h;
cout<<setiosflags(ios::fixed);
cout<<setprecision(2);
//圆周长
cout<<"C1="<<2*PI*r<<endl;
//圆面积
cout<<"Sa="<<PI*r*r<<endl;
//圆球表面积
cout<<"Sb="<<4*PI*r*r<<endl;
//圆球体积
cout<<"Va="<<4*PI*r*r*r/3.0<<endl;
//圆柱体积
cout<<"Vb="<<int(PI*r*r*h*100)/100.0<<endl;
return 0;
}