java中 c.show,C++ showpoint操作符(详解版)

默认情况下,浮点数不会显示尾数 0,并且如果没有小数部分的浮点数则不显示小数点。例如,以下代码:

double x = 456.0;

cout << x << endl;

将仅显示 456。

现在介绍另一个有用的操作符 showpoint,它允许这些默认值被覆盖。当使用 showpoint 时,表示打印浮点数的小数点和小数位数,即使显示的数值没有小数点。以下是应用了 showpoint 操作符的代码示例:

double x = 456.0;

cout << showpoint << x << endl;

它将显示以下输出结果:

456.000

这里之所以显示了 3 个零,是因为如果没有指定所需的小数点位数,则默认显示 6 个有效数。可以将 fixed、showpoint 和 setprecision操作符一起使用,以便更好地控制输出的外观,示例如下:

double x = 456.0;

cout << fixed << showpoint << setprecision(2) << x << endl;

此版本的代码产生以下输出:

456.00

下面的程序进一步说明了这些操作符的使用。与 setprecision —样,fixed 和 showpoint 操作符都将持续有效,直到程序员明确更改它们为止:

// This program illustrates the how the showpoint, setprecision, and

// fixed manipulators operate both individually and when used together.

#include

#include // Header file needed to use stream manipulators

using namespace std;

int main()

{

double x = 6.0;

cout << x << endl;

cout << showpoint << x << endl;

cout << setprecision(2) << x << endl;

cout << fixed << x << endl;

return 0;

}

程序输出结果:

6

6.00000

6.0

6.00

程序的第 10 行中,当第一次打印 x 时,尚未设置任何操作符,由于显示的值不需要小数点,因此只显示数字 6。

在第 11 行中,当第二次打印 x 时,由于已经设置了 showpoint 操作符,因此会显示小数点并且在后面跟零。但是由于 setprecision 操作符尚未设置,无法控制要打印多少零,所以按默认的 6 个有效数显示 6.00000。

在第 12 行中,当第三次打印 x 时,setprecision 操作符已经设置。但是,由于 fixed 尚未设置,而 setprecision(2) 表示应显示两个有效数,所以显示的是 6.0。

最后,在第 13 行中,当打印最后一个 x 时,fixed 和 setprecision 操作符两者都被设置,指定要打印两位小数,因此显示结果为 6.00。

实际上,当同时使用 fixed 和 setprecision 操作符时,不需要使用 showpoint 操作符。来看以下语句:

cout << fixed << setprecision(2);

该语句将在两个小数位前面自动显示一个小数点。不过,许多程序员更喜欢使用以下语句:

cout << fixed << showpoint << setprecision(2);

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值