题目链接
题目描述
会说整数之后,牛牛开始尝试浮点数(小数)。
输入描述:
输入一个浮点数 f
。
输出描述:
输出浮点数 f
。从示例来看,需要保留三位小数输出。
解题思路
本题是继整数输入输出之后,对浮点数输入输出的考察。核心在于两点:
- 使用能表示浮点数的数据类型(如 C++ 的
double
或float
,Java 的double
,Python 的float
)来存储输入的数字。 - 在输出时,按照题目示例的要求,将结果格式化为保留三位小数的形式。这通常需要使用特定语言的格式化输出功能。
代码
#include <iostream>
#include <iomanip> // 需要包含此头文件以使用 setprecision
using namespace std;
int main() {
double f;
// 从标准输入读取一个浮点数
cin >> f;
// 设置输出格式为固定小数点表示,并保留三位小数
cout << fixed << setprecision(3) << f << endl;
return 0;
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 从标准输入读取一个双精度浮点数
double f = sc.nextDouble();
// 使用 printf 格式化输出,%.3f 表示保留三位小数的浮点数
System.out.printf("%.3f%n", f);
}
}
# 从标准输入读取一行,并转换为浮点数
f = float(input())
# 使用 f-string 或 format 方法格式化输出,:.3f 表示保留三位小数
print(f"{f:.3f}")
算法及复杂度
- 算法:基础输入输出与格式化。
- 时间复杂度:
- 读取和打印浮点数的操作是常数时间。
- 空间复杂度:
- 仅需常数空间存储输入的浮点数。