一、问题链接
http://noi.openjudge.cn/ch0101/07/
二、问题需求
2.1 输入一个双精度浮点数,分别按"%f"
、"%.5f"
、"%e"
、"%g"
格式输出这个数,每次在单独一行上输出。
三、相关知识点
序号 | 知识点列表 |
|
---|---|---|
3.1 | \n 标记 | 转义字符,用于System.out.printf 方法中,代表一个换行 |
3.2 | "%f" 格式 | 代表一个浮点数,一般默认保留6位小数 |
3.3 | "%.5f" 格式 | 代表一个浮点数保留5位小数 |
3.4 | "%e" 格式 | 代表一个用科学计数法形式表示的浮点数 |
3.5 | "%g" 格式 | 代表一个浮点数,自动选择"%f" 格式和"%e" 格式中较短的那个格式 |
四、算法思想
4.1 定义并输入double
类型的双精度浮点数n
,调用System.out.printf
方法,通过"%f\n%.5f\n%e\n%g"
格式输出n
。
五、Java程序
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double n = input.nextDouble(); // 定义并输入双精度浮点数
System.out.printf("%f\n%.5f\n%e\n%g", n, n, n, n); // 按题目格式要求输出结果
}
}
六、备注
6.1 本题使用Java编程无法AC,只能获得8分。