圆形体体积计算器(20 分)

16 篇文章 6 订阅

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

  • 球体体积 V=34πr3,其中r是球体半径。
  • 圆柱体体积 V=πr2h,其中r是底圆半径,h是高。
  • 圆锥体体积 V=31πr2h,其中r是底圆半径,h是高。

输入格式:

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

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
2.4 3
0

输出样例:

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:
#include<stdio.h>
#include<math.h>
int main(){
	int i,j,num;
	double pi=3.1415926535,r,h;/*题目不难但是有一个坑,就是这个π的值一定要精确到小数后10位,要不然只是16分一直有一个测试点错误,(我就被坑好好久!)*/
	while(1){
		printf("1-Ball\n2-Cylinder\n3-Cone\nother-Exit\nPlease enter your command:\n");
		scanf("%d",&num);
		switch(num){
			case 1:{
				printf("Please enter the radius:\n");
				scanf("%lf",&r);
				printf("%.2lf\n",4.0/3*pi*pow(r,3));
				break;
			}
			case 2:{
				printf("Please enter the radius and the height:\n");
				scanf("%lf %lf",&r,&h);
				printf("%.2lf\n",pi*pow(r,2)*h);
				break;
			}
			case 3:{
				printf("Please enter the radius and the height:\n");
				scanf("%lf %lf",&r,&h);
				printf("%.2lf\n",1.0/3*pi*pow(r,2)*h);
				break;
			}
			default:return 0;
		}
	}
	return 0;
} 

  • 16
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
好的,我来为您提供一个基于C语言的常用圆形体积计算器的设计。 ```c #include <stdio.h> #include <math.h> int main() { int choice; float radius, height, length, width, volume; printf("请选择要计算的圆形:\n"); printf("1. 球\n"); printf("2. 圆柱\n"); printf("3. 圆锥\n"); scanf("%d", &choice); switch(choice) { case 1: printf("请输入球的半径:\n"); scanf("%f", &radius); volume = 4.0/3.0 * M_PI * pow(radius, 3); printf("球体积为:%.2f\n", volume); break; case 2: printf("请输入圆柱的底面半径:\n"); scanf("%f", &radius); printf("请输入圆柱的高:\n"); scanf("%f", &height); volume = M_PI * pow(radius, 2) * height; printf("圆柱体积为:%.2f\n", volume); break; case 3: printf("请输入圆锥的底面半径:\n"); scanf("%f", &radius); printf("请输入圆锥的高:\n"); scanf("%f", &height); volume = 1.0/3.0 * M_PI * pow(radius, 2) * height; printf("圆锥体积为:%.2f\n", volume); break; default: printf("输入错误,请输入1、2、3中的一个数字!\n"); break; } return 0; } ``` 以上代码中,我们使用了`switch`语句来根据用户的选择进行不同的计算。在每个`case`下,我们都会要求用户输入相应的参数,并计算出圆形体积。最后,我们使用`printf`函数输出计算结果。 需要注意的是,我们在计算球体积时,使用了`math.h`库中的`pow`函数来计算半径的立方,而在计算圆柱和圆锥体积时,我们直接使用了半径的平方。这是因为`pow`函数在计算平方时会产生一些误差,而对于体积计算来说,这些误差是可以忽略不计的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值