【发布时间】:2013-03-12 11:48:59
【问题描述】:
我想分别打印双数的实部和小数部分,而不使用字符串或数组的概念?我不知道如何使用 printf() 只打印小数部分。
输入 1:13.31432 输出 1:13 31432
输入 2:15.36 输出 2:15 36
我可以打印实数部分,但不能打印小数部分。
【问题讨论】:
-
stackoverflow.com/a/5584237/1064610 和 printf() 是一个 c 函数
我想分别打印双数的实部和小数部分,而不使用字符串或数组的概念?我不知道如何使用 printf() 只打印小数部分。
输入 1:13.31432 输出 1:13 31432
输入 2:15.36 输出 2:15 36
我可以打印实数部分,但不能打印小数部分。
【问题讨论】:
System.out.println((long)input); //Prints real part
System.out.println(input - (long)input); //Prints decimal part
【讨论】:
0.。例如,System.out.println(String.valueOf(d - (int) d).substring(2));。我认为在一般情况下没有删除 00000000004 的好方法,因为计算机不会精确存储浮点数。但是,如果您知道它始终是您想要的五位数,您可以这样做:System.out.println(String.format("%.05f", d - (int) d).substring(2)); 得到准确的 31432。
String,您将无法获得预期的输出。如果我得到线索,我会尝试更新我的帖子。