PTA-R7-1 圆形体体积计算器
R7-1 圆形体体积计算器
分数 20
全屏浏览题目
切换布局
作者 张高燕
单位 浙江大学
本题要求实现一个常用圆形体体积的计算器。计算公式如下:
- 球体体积 V=4π*r3/3,其中r是球体半径。
- 圆柱体体积 V=π *r2h,其中r是底圆半径,h是高。
- 圆锥体体积 V=π *r2h/3,其中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:

代码长度限制
16 KB
时间限制
400 ms
内存限制
64 M
注:Π(音:派)的数字只限定在6位小数的话计算值是错的。。
1 #include <stdio.h>
2
3 void face(); //函数声明1,每次的界面输出
4
5 struct volume{
6 int num;
7 double r;
8 double h;
9 double ver;//体积
10 };
11
12 int main()
13 {
14 double x = 3.1415926535;
15 struct volume v[9999];
16
17 int i = 0;
18 while(1){
19 scanf("%d", &v[i].num);
20 if(v[i].num == 1){
21 scanf("%lf", &v[i].r);
22 }else if(v[i].num == 2){
23 scanf("%lf %lf", &v[i].r, &v[i].h);
24 }else if(v[i].num == 3){
25 scanf("%lf %lf", &v[i].r, &v[i].h);
26 }else{
27 break;
28 }
29 i++;
30 }
31 i = 0;
32 while(1){
33 face();
34 if(v[i].num == 1){
35 printf("Please enter the radius:\n");
36 v[i].ver = 4 * x * v[i].r * v[i].r * v[i].r / 3;
37 }else if(v[i].num == 2){
38 printf("Please enter the radius and the height:\n");
39 v[i].ver = x * v[i].r * v[i].r * v[i].h;
40 }else if(v[i].num == 3){
41 printf("Please enter the radius and the height:\n");
42 v[i].ver = x * v[i].r * v[i].r * v[i].h / 3;
43 }else{
44 break;
45 }
46 printf("%.2f\n", v[i].ver);
47 i++;
48 }
49
50 return 0;
51 }
52
53 void face() //函数定义1
54 {
55 printf("1-Ball\n");
56 printf("2-Cylinder\n");
57 printf("3-Cone\n");
58 printf("other-Exit\n");
59 printf("Please enter your command:\n");
60 }
PTA-R7-1 圆形体体积计算器的更多相关文章
- PTA数据结构 习题2.1 简单计算器 (20分)
习题2.1 简单计算器 (20分) 模拟简单运算器的工作.假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算. 输入格式: 输入在一行中给出一个四则运算 ...
- 第六次学习总结&&第四次实验总结
Java实验报告 班级 1班 学号 20188390 姓名 宋志豪 实验四 类的继承 1.实验目的 (1)掌握类的继承方法: (2)变量的继承和覆盖,方法的继承.重载和覆盖实现: 2.实验内容 实验代 ...
- C语言第六次作业--数据类型
一.PTA实验作业 题目1,简单计算器: 1. 本题PTA提交列表 2. 设计思路 定义操作数num1,num2,结果result=0.运算符ch. 输入num1 while (ch=getchar( ...
- GPS精度因子(GDOP,PDOP,HDOP,VDOP,TDOP)
PDOP:位置精度因子(Position Dilution of Precision),直译为“精度强弱度”,通常翻译为“相对误差”.具体含义是:由于观测成果的好坏与被测量的人造卫星和接收仪间的几何形 ...
- C语言基础二
C--顺序程序设计 赋值语句 赋值语句和赋值表达式的区别: if((a = b) > 0) t = 0; 字符数据的输入输出 putchar函数 该函数为字符输出函数,其作用是向终端数出一个字符 ...
- 神奇的 SQL 之温柔的陷阱 → 三值逻辑 与 NULL !
前言 开心一刻 一个中国小孩参加国外的脱口秀节目,因为语言不通,于是找了一个翻译. 主持人问:“Who is your favorite singer ?” 翻译:”你最喜欢哪个歌手啊 ?” 小孩 ...
- Python输入input、输出print
1.输入input input是用于输入数据给变量.通过键盘输入的是字符串,如果需要其他格式,需要做转换.比如int.float类型数据,int() 如下是一个例子: 如果a不进行int转换,那么输入 ...
- Python中用函数实现代码的复用
# Python中用函数实现代码复用 """ def funcname(paras): statements return [expression] 关于函数定义说明如下 ...
- PTA 简单计算器(C语言)
模拟简单运算器的工作.假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算. 输入格式:输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数.遇 ...
- PTA面向对象程序设计6-3 面积计算器(函数重载)
实现一个面积计算器,它能够计算矩形或长方体的面积. 函数接口定义: int area(int x, int y); int area(int x, int y, int z); 第一个函数计算长方形的 ...
随机推荐
- mybatis日志打印到控制台
mybatis: configuration:# 日志输出到控制台 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
- frp使用教程
内网穿透工具---frp使用教程 https://blog.csdn.net/u011215939/article/details/103383373
- 对象可能是类数组对象 不具备数组的原型内的方法 所以可以用call或者apply把this指向改成数组或对象原型
const arr = [] 2Object.prototype.toString.call(arr) === '[object Array]' // true 3 4 const obj = {} ...
- k8s安装metrics-server
Kubernetes Metrics Server: Kubernetes Metrics Server 是 Cluster 的核心监控数据的聚合器,kubeadm 默认是不部署的. Metrics ...
- Vue2 常见问题汇总及解决方案
参考:https://mp.weixin.qq.com/s/6Wapb1bZLQaYv0zlip6ygg 1.安装超时(install timeout) 方案: cnpm : 国内对npm的镜像版本 ...
- vim 小记录
将str1批量替换成str2 , 特殊符号前用转译符 \ :%s/str1/str2/g
- 基于北斗gps设计的NTP网络时间服务器
基于北斗gps设计的NTP网络时间服务器 基于北斗gps设计的NTP网络时间服务器 京准电子科技官微--ahjzsz 随着5G等新型基础设施持续建设和发展,在未来万物互联的庞大信息网络中,跨路由节点之 ...
- SQL server 去掉重复数据
只要数据表"列名"数据相同,则说明是两条重复的数据(ID为数据表的主键自动增长). 推荐使用方法一 -- 方法一 select * from 表名 A where not exis ...
- nodeJs 写个爬虫小玩意
内容 起一个服务,爬某个网站的数据(我这里爬了个夕阳红游戏交易网站的数据),页面看到我要爬的内容 代码 1 //引入内置的http包 2 var http = require('http'); 3 c ...
- D3简介
(一)D3简介 一.D3是什么 一张图片价值相当于一千个字 D3的全称是 Data-Driven Documents,直译为:数据驱动的文档 D3是一个javaScript的函数库,是用来做数据可视化 ...