需要加载头文件
#include<iomanip>
保留小数位数
cout<<fixed<<setprecision(3)<<a<<" ";
cout<<fixed<<setprecision(2)<<b;
## 1031 - 温度转换
> 题目描述
> 编一程序,将摄氏温度换为华氏温度。公式为:f=9/5*c+32。其中f为华氏温度,c是摄氏温度。(5.2.12)
>输入
>输入一行,只有一个整数c
>输出
>输出只有一行,包括1个实数。(保留两位小数)
>样例
>输入复制
>50
>输出复制
>122.00
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
float f, c;
cin >> c;
f = 9.0 / 5.0 * c + 32;
cout << fixed << setprecision(2) << f << endl;
return 0;
}
## 1345 - 玫瑰花圃
>有一块n×n(n≥5n≥5,且n是奇数)的红玫瑰花圃,由 n×n 个小正方形花圃组成,现要求在花圃中最中间的一行、最中间的一列以及 4 个顶点处种植粉色玫瑰,请问粉玫瑰占地面积占整个玫瑰花圃总面积的百分比是多少?(6.2.72)
如 n=5,花圃形状如下,粉玫瑰占地百分比 %=13/25=52.0%
![image-20221113002959243](img/image-20221113002959243.png)
如 n=7,花圃形状为如下,粉玫瑰占地百分比17/49=34.7%
![image-20221113003006531](img/image-20221113003006531.png)
>输入
>一个整数 nn ( 5≤n≤995≤n≤99,且n是奇数)
>输出
>粉玫瑰占总玫瑰园的百分比,结果保留 11 位小数,显示为百分比的形式。
>样例
>输入复制
>5
>输出复制
>52.0%
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
//边长
int n;
cin >> n;
//粉色块
int f = n + n - 1 + 4;
//总块数
int z = n * n;
float b = 1.0 * f / z * 100;
cout <<fixed<<setprecision(1)<< b<<"%";
return 0;
}
1565 - 成绩(score)
题目描述 牛牛最近学习了C++入门课程,这门课程的总成绩计算方法是: 总成绩=作业成绩 × 20% + 小测成绩 × 30% + 期末考试成绩 × 50% 牛牛想知道,这门课程自己最终能得到多少分。
输入 三个非负整数A、B、C,分别表示牛牛的作业成绩、小测成绩和期末考试成绩。相邻两个数之间用一个空格隔开,三项成绩满分都是100分。 输出 一个整数,即牛牛这门课程的总成绩,满分也是100分。
样例 输入复制 100 100 80 输出复制 90
说明 输入样例#1: 100 100 80 输出样例#1: 90 输入样例#2: 60 90 80 输出样例#2: 79 【输入输出样例1说明】 牛牛的作业成绩是100分,小测成绩是100分,期末考试成绩是80分,总成绩是 100×20%+100×30%+80×50%=20+30+40=90 【输入输出样例2说明】 牛牛的作业成绩是60分,小测成绩是90分,期末考试成绩是80分,总成绩是 60×20%+90×30%+80×50%=79。 【数据说明】 对于30%数据,A=B=0。 对于另外30%的数据,A=B=100。 对于100%的数据,0≤A,B,C≤100且A、B、C都是10的整数倍。
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
//总成绩=作业成绩 × 20% + 小测成绩 × 30% + 期末考试成绩 × 50%
float a, b, c;
cin >> a >> b >> c;
float z = 1.0 * a * 20 / 100 + 1.0 * b * 30 / 100 + 1.0 * c * 50 / 100;
cout << fixed << setprecision(2) << z;
return 0;
}
## 1338 - 求圆环的面积
>题目描述
>如下图所示的圆环铁片,中间是空心的,已知圆环外圆的半径是r1厘米(如:10cm),内圆半径是r2厘米(如:6cm),请编程计算该铁片的面积。(外圆面积 – 内圆面积,假设π=3.14,结果保留2位小数)
(5.2.99)
>输入
>2个整数r1、r2,分别代表外圆和内圆的半径。
>输出
>铁片的面积。
>样例
>输入复制
>10 6
>输出复制
>200.96
>说明
>圆的面积和周长求解公式分别如下;
>圆的面积S = π * 半径 * 半径;(π读作pài,π = 3.1415926…,在具体的题目中π的值精确到小数点后多少位,取决于具体的题目)
>圆的周长C = π * 2 * 半径;
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
float r1, r2;
cin >> r1 >> r2;
float pi = 3.14;
float s1 = pi * r1 * r1 - pi * r2 * r2;
cout <<fixed<<setprecision(2)<<s1<< endl;
return 0;
}
## 1337 - 求花坛的面积
>题目描述
>龙湖校区有一个圆形花坛,量得花坛周围的篱笆长是x米,请问该花坛的面积是多少平方米?(假设π=3.14)(5.2.99)
>输入
>一个小数x
>输出
>花坛的面积(结果保留2位小数)
>样例
>输入复制
>18.84
>输出复制
>28.26
>说明
>圆的面积和周长求解公式分别如下;
>圆的面积S = π * 半径 * 半径;(π读作pài,π = 3.1415926…,在具体的题目中π的值精确到小数点后多少位,取决于具体的题目)
>圆的周长C = π * 2 * 半径;
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
//半径 = 周长/pi/2;
float c;
cin >> c;
float r = c / 3.14 / 2;
float s = 3.14 * r * r;
cout << fixed << setprecision(2) << s;
return 0;
}
## 1329 - 求梯形的面积
> 题目描述
> 梯形面积的求解公式为 S = (a + b) * h / 2。从键盘读入一个梯形的上底a、下底b和高h,请计算表梯形的面积。(结果保留1位小数)(5.1.15
>输入
>三个整数a、b、h
>输出
>梯形的面积
>样例
>输入复制
>2 3 5
>输出复制
>12.5
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a, b, h;
cin >> a >> b >> h;
float s = 1.0 * (a + b) * h / 2;
cout << fixed << setprecision(1) << s << endl;
return 0;
}
## 1601 - 挖胡萝卜
>题目描述
>小兔朱迪挖了x个胡萝卜,狐狸尼克挖到胡萝卜数量是小兔挖到的3倍,小羊肖恩挖到胡萝卜的数量比狐狸尼克少8个;
>请你编程计算一下狐狸尼克和小羊肖恩分别挖了几个胡萝卜,以及平均每个动物挖了几个胡萝卜?
>输入
>一个整数x代表小兔挖走的胡萝卜的数量。
>输出
>三个数,每行1个,第1个整数代表狐狸尼克挖走的胡萝卜的数量,第2个整数代表小羊肖恩挖走的胡萝卜的数量,第3个数是小数代表平均每个动物挖走了几个胡萝卜(结果保留1位小数)。
>样例
>输入复制
>10
>输出复制
>30
>22
>20.7
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int x;
cin >> x;
int h = 3 * x;
int y = h - 8;
float avg = 1.0 * (x + h + y) / 3;
return 0;
}
## 1598 - 文具店的折扣
题目描述
花花去文具店买了1支笔和1块橡皮,已知笔x元/支,橡皮y元/块,文具店今天有活动,可以给顾客打9折(用购买总价 * 0.9),花花付给了老板n元,请问老板应该找给花花多少钱?
>输入
>三个整数x、y、n,分别代表了笔的单价、橡皮的单价和花花付给老板的钱(已知花花付给老板的钱n>=x+y)
>输出
>一个小数(保留1位小数),代表老板应该找给花花的钱
>样例
>输入复制
>2 1 5
>输出复制
>2.3
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int n, x, y;
cin >> n >> x >> y;
float s = n - (x + y) * 0.9;
cout << fixed << setprecision(1) << s;
return 0;
}
## 1602 - 总分和平均分
>题目描述
>期末考试成绩出来了,小明同学语文、数学、英语分别考了x、y、z分,请编程帮助小明计算一下,他的总分和平均分分别考了多少分?
>输入
>三个整数x、y、z分别代表小明三科考试的成绩。
>输出
>第1行有一个整数,代表总分,第2行有一个小数(保留1位小数)代表平均分。
>样例
>输入复制
>100 95 91
>输出复制
>286
>95.3
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int x, y, z;
cin >> x >> y >> z;
float s = x + y + z;
float avg = 1.0 * s / 3;
cout << fixed << setprecision(0) << s <<endl;
cout << fixed << setprecision(1) << avg;
return 0;
}