实验10-1 圆形体体积计算器(20 分)

实验10-1 圆形体体积计算器(20 分)

本题要求实现一个常用圆形体体积的计算器。计算公式如下:

  • 球体体积 $V= \frac{4}{3} \pi r^3$,其中r是球体半径。
  • 圆柱体体积$ V=πr^2h$,其中r是底圆半径,h是高。
  • 圆锥体体积$ V=\frac{1}{3} \pi r^2h$,其中r是底圆半径,h是高。

输入格式:

在每次计算之前,要求输出如下界面:

1
2
3
4
5
1-Ball
2-Cylinder
3-Cone
other-Exit
Please enter your command:

然后从标准输入读进一个整数指令。

输出格式:

如果读入的指令是1或2或3,则执行相应的体积计算;如果是其他整数,则程序结束运行。

  • 当输入为1时,在计算球体体积之前,打印Please enter the radius:,然后读入球体半径,完成计算;
  • 当输入为2时,在计算圆柱体体积之前,打印Please enter the radius and the height:,然后读入底圆半径和高,完成计算;
  • 当输入为3时,在计算圆锥体体积之前,打印Please enter the radius and the height:,然后读入底圆半径和高,完成计算。

计算结果在一行内输出,保留小数点后两位。

输入样例:

1
2
3
4
5
1
2
3
2.4 3
0

输出样例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
1-Ball
2-Cylinder
3-Cone
other-Exit
Please enter your command:
Please enter the radius:
33.51
1-Ball
2-Cylinder
3-Cone
other-Exit
Please enter your command:
Please enter the radius and the height:
18.10
1-Ball
2-Cylinder
3-Cone
other-Exit
Please enter your command:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <stdio.h> 
#include <stdlib.h>
#include <math.h>
#define PI 3.141592654
void cal(int sel);
int main(void)
{
int sel;
while(1){
printf("1-Ball\n");
printf("2-Cylinder\n");
printf("3-Cone\n");
printf("other-Exit\n");
printf("Please enter your command:");
scanf("%d",&sel);
if(sel<1||sel>3)
break;
else
cal(sel);
}
return 0;
}
void cal(int sel) {
double vol_ball(void);
double vol_cylind(void);
double vol_cone(void);
switch(sel)
{
case 1:
printf("球体积为:%.2f\n",vol_ball());
break;
case 2:
printf("圆柱体积为:%.2f\n",vol_cylind());
break;
case 3:
printf("圆锥体积为:%.2f\n",vol_cone());
break;
}
}
double vol_ball()
{
double r;
printf("Please enter the radius::");
scanf("%lf",&r);
return (4.0/3.0*PI*r*r*r);
}
double vol_cylind()
{
double r,h;
printf("Please enter the radius and the height:");
scanf("%lf%lf",&r,&h);
return (PI*r*r*h);
}
double vol_cone()
{
double r,h;
printf("Please enter the radius and the height:");
scanf("%lf%lf",&r,&h);
return (PI*r*r*h/3.0);
}
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×