1 solutions
-
1
这道题需要使用“浮点数”(即小数)。在 C++ 中,有以下三种数据类型来存储浮点数:
数据类型 占用字节数 最大有效数字数 scanf 或 printf 格式串 float 4 6 %f double 8 15 %lf long double 16 18 %Lf OI 中一般倾向于使用 double。
cout 在输出浮点数时,默认输出 6 位有效数字,可以直接通过本题。但如果需要设置输出 x 位有效数字的话,可以先向 cout 中插入 setprecision(x)。例如,cout << setprecision(4) << 12.3456; 将会输出 12.34。
对于 printf,使用 printf("%.xg"); 可以控制输出有效数字位数。例如,printf("%.4g",12.3456); 将会输出 12.34。
代码:
#include <bits/stdc++.h> using namespace std; double m,h,b; int main() { scanf("%lf%lf",&m,&h); b=m/h/h; if(b<18.5) printf("Underweight"); else if(b>=18.5&&b<24)printf("Normal"); else printf("%.6g\nOverweight",b); return 0; }
- 1
Information
- ID
- 522
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 10
- Tags
- (None)
- # Submissions
- 5
- Accepted
- 4
- Uploaded By