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); 第一个函数计算长方形的 ...
随机推荐
- 第十一周作业-N67044-张铭扬
1. redis主从复制原理? 1 从节点1.2 2 127.0.0.1:6379> replicaof 10.0.0.157 6379 3 OK 4 127.0.0.1:6379> co ...
- bash 和 zsh 中while循环的方式
bash: while true; do ./a.out; done zsh: while true; do ./a.out;
- pictrue类的练习
这里遇到一个问题,因为导入的文件格式很大,所以内存占用特别高,就会在运行一段时间过后报错:内存不够 然后用了一个GC.collect():的方法,加在了timer控件里,让程序每隔1000ms换图时也 ...
- vue下载zip包到本地
<script> import axios from 'axios' export default{ methods: { downloadZip (downloadName, downl ...
- tasklist
tasklist是windows下列出进程信息的指令,可配合taskKill来关毕进程 https://learn.microsoft.com/zh-cn/windows-server/adminis ...
- calico 关闭SNAT
calico 关闭SNAT 默认情况下,calico 访问集群外网络是通过 SNAT 成宿主机 ip 方式,在一些金融客户环境中为了能实现防火墙规则,需要直接针对 POD ip 进行进行规则配置,所以 ...
- SQLServer错误:expected a simple type, a tuple or a list
dict_data = { 'request_id': request_id, 'original_id': request_body.original_id, 'unit_type': reques ...
- mysql 5.7 gtid 主从复制
GTID中slave端的binlog是必须开启的,目的是记录执行过的GTID 主库#开启gtidlog-bin=mysql-binexpire_logs_days = 5binlog_format=r ...
- docker部署rocketmq
docker pull foxiswho/rocketmq:server-4.7.0 (拉取镜像) docker pull foxiswho/rocketmq:broker-4.7.0 (拉取镜像) ...
- js-防抖(简易版)
/** * 节流函数 */ var count = 1; var container = document.getElementById('container'); function getUse ...