题目1-1 圆柱体的表面积
输入底面半径r和高h,输出圆柱体的表面积,保留3位小数样例输入 : 3.5 9
样例输出 : 274.889
解题思路:圆柱体的表面积主要有两部分组成,侧面积和上、下底面积。根据数学几何知识我们可以知道,圆柱体的侧面展开是一个长方形,而上下底面是一个圆形,要求出圆柱体表面积我们就要知道侧面的长和宽,以及底面的半径。题目已经给出了底面半径r,底面积我们很容易的用公式π*r*r就能求出,关键是求侧面面积。我们知道侧面的长其实底面的周长,而宽其实是圆柱体的高,那么侧面的面积就为2*π*r*h。最终表面积就可以表示为:2*π*r*r+2*π*r*h。要注意的是圆柱体有两个底面,不要忘记乘于2。
举一反三,按照这种思路我们可以求出其他柱体、椎体的表面积以及体积,我们需要的数学中简单的几何知识,然后推出公式,就能A出题了。
代码:
double Area( double r, double h ){
const double PI = 4.0 * atan(1.0);
double bottomArea, sideArea, surfaceArea;
bottomArea = PI*r*r;
sideArea = 2*PI*r*h;
surfaceArea = 2.0*bottomArea+sideArea;
return surfaceArea;
}
int main()
{
double r,h,p;
scanf("%lf%lf",&r,&h);
p=Area(r,h);
printf("%.3lf\n",p);
return 0;
}
注意:书中变量命名的方法都以简单的字母命名,如最常用a,b,c,i,j,大概是为了在比赛中能尽快A题,但实际开发项目中是不推荐用简单命名的方式的,常用的变量命名方法有驼峰式、下划线分割法等。变量的命名要尽量表现出该变量的代表的意义,这样在后期维护起来会非常便利,尤其是由他人维护你开发的代码时候。记住一点,比赛可以用简单命名的方式,实际开发尽量不要使用。