C++实现 L1-040 最佳情侣身高差 (10分)
一、描述
专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式: ( 女 方 的 身 高 ) × 1.09 = ( 男 方 的 身 高 ) (女方的身高)×1.09 =(男方的身高) (女方的身高)×1.09=(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。
下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。
二、输入格式
输入第一行给出正整数 N ( ≤ 10 ) N(≤10) N(≤10),为前来查询的用户数。随后 N N N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其中“性别”为“F”表示女性、“M”表示男性;“身高”为区间 [1.0, 3.0] 之间的实数。
三、输出格式
对每一个查询,在一行中为该用户计算出其情侣的最佳身高,保留小数点后2位。
四、输入样例
2
M 1.75
F 1.8
五、输出样例
1.61
1.96
六、思路
- 定义结构体people,属性为性别和身高;
- 依次录入个人信息;
- 根据性别进行输出判断;
- 按要求输出即可。
七、小知识点
利用setprecision()保留两位小数。
八、代码
#include <iostream>
#include <iomanip>
using namespace std;
struct people
{
char sex;//性别M男,F女
double sg;//身高
};
int main()
{
int n;//录入n个人
cin>>n;
struct people p[n];
for(int i=0;i<n;i++)
cin>>p[i].sex>>p[i].sg;//录入个人信息
for(int i=0;i<n;i++)
{
if(p[i].sex=='M')//男人时候
cout<<fixed<<setprecision(2)<<p[i].sg/1.09<<endl;
else//女人时候
cout<<fixed<<setprecision(2)<<p[i].sg*1.09<<endl;
}
return 0;
}