C++中double类型的数字如何保留三位小数点详解
我们知道C语言中,如果要求输出结果保留三位小数,我们可以使用pritf()函数轻松的解决。但是C++的输出运算符<<并没有直接实现这个功能,怎么办呢?之前在找答案的过程中各路大神给出了千姿百态的答案,我不会进行一一总结,但是我今天主要的目的是说C++中std命名空间中直接实现了这个的!!!不要化简为繁!!!
我以一个例子作为讲解:
已知线段的两个端点坐标是A(xa,ya),B(xb,yb),求线段AB的长度,保留到小数点后3位。
样例输入:1 1
2 2
样例输出:1.414
代码如下:
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main(int argc, char** argv) {
double xa,ya,xb,yb,result;
cin>> xa>>ya>>xb>>yb;
result=sqrt( (xb-xa)*(xb-xa)+(yb-ya)*(yb-ya) );
cout<<)<<result<<endl;
;
}
很多人会对下面这句代码不理解,
cout<<)<<result<<endl;
下面我们进行重点讲解:
设置要用于格式化输出操作的浮点值的小数精度。
这个操纵符是在头文件<iomanip>中声明的。
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main(int argc, char** argv) {
double a=3.1415926;
cout << setprecision() << a <<endl; //3.14
cout << setprecision() << a <<endl; //3.1415926
cout << ) << a <<endl; //3.142
cout << ) << a <<endl; //3.141592600
;
}
如果有什么疑问,欢迎留言。如需转载,请注明出处:http://www.cnblogs.com/wongyi/p/8204210.html
C++中double类型的数字如何保留三位小数点详解的更多相关文章
- React中使用 react-router-dom 路由传参的三种方式详解【含V5.x、V6.x】!!!
路由传值的三种方式(v5.x) params参数 //路由链接(携带参数): <Link to='/demo/test/tom/18'}>详情</Link> //或 <L ...
- java中double类型显示两个小数,比如12.00
Double类型的数据如何保留两位小数? 各位大虾,现有Double类型的数据,如何转换为保留两位小数的数,返回值的类型仍然是Double类型的,而不是字符串类型. 比如 0,返回“0.00” ...
- 关于java中Double类型的运算精度问题
标题 在Java中实现浮点数的精确计算 AYellow(原作) 修改 关键字 Java 浮点数 精确计算 问题的提出:如果我们编译运行下面这个程序会看到什么?publi ...
- 关于java中Double类型的运算精度问题(转)
Java Java double:浮点数:精确计算 public class Test{ public static void main(String args[]){ Syst ...
- Java中double类型的数据精确到小数点后两位
Java中double类型的数据精确到小数点后两位 多余位四舍五入,四种方法 一: double f = 111231.5585;BigDecimal b = new BigDecimal(f); d ...
- JS格式化数字保留两位小数点示例代码
格式化数字保留两位小数点实现的方法有很多,在接下来的文章中将为大家详细介绍下如何使用js来实现 a = a.toFixed(2);//保留2位但结果为一个String类型 a = parseFloat ...
- Scala 深入浅出实战经典 第81讲:Scala中List的构造是的类型约束逆变、协变、下界详解
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-97讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...
- js正则表达式 数字和小数点 非负数 保留两位小数点
验证数字非负数 小数点保留两位小数点 下面正则已验证通过 /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/
- float四舍五入保留一位小数点(坑)
Float四舍五入保留一位小数点 public class Test { public static void main(String[] args){ double data1 ...
随机推荐
- php命令执行脚本
php -f jiaoben.php & 读入并解释指明的文件.
- Nginx动静分离实现
Nginx动静分离实现: Nginx是一种轻量级,高性能,多进程的Web服务器,非常适合作为静态资源的服务器使用,而动态的访问操作可以使用稳定的Apache.Tomcat及IIS等来实现,这里就以Ng ...
- Linux 编程--三种常用的定时器
这节我们来探讨一下linux开发过程中常用的定时器,尤其在网络编程中被常常用到如heartbeat,断线重连等等.这里提供了三种定时器的方案,分别是链表形式的计时器,环型计时器,最小堆计时器.每个都有 ...
- 分布式监控系统Zabbix3.2对数据库的连接数预警
在前篇分布式监控系统Zabbix3.2监控数据库的连接数 中已经对数据库的端口3306进行了监控,可以看到数据库的连接数历史变化有高有低,那如果达到了数据库连接数的阀值是不是主动通知给运维人员去检查问 ...
- 小实例---关于input宽度自适应以及多个input框合并拆分
前两个月,公司内部需要开发关于大数据方面的辅助工具语料分词系统,在这个项目中遇到以下几个主要问题,在此分享~ 一.input宽度根据内定文本宽度自适应 背景:项目需求中,前台展示,需要从后台获取的.t ...
- Docker笔记四:Elasticsearch实例部署
在运行或启动elasticsearch容器前,先在宿主机上执行 sysctl -w vm.max_map_count=262144: 解决" max virtual memory areas ...
- 使用.Net Core+EF7 CodeFirst(2)
上一篇的话,说了下怎么使用EF7 实现 CodeFirst去生成数据库, 其实还有好多问题的,这次一点一点的解决吧,都挺简单,不过零零散散的,, 1.读取配置文件,获得链接字符串 2.使用数据库进行增 ...
- POJ 2195Going Home(网络流之最小费用流)
题目地址:id=2195">POJ2195 本人职业生涯费用流第一发!!快邀请赛了.决定还是多学点东西.起码碰到简单的网络流要A掉.以后最大流费用流最小割就一块刷. 曾经费用流在我心目 ...
- ES5规范之Object增强
在ES5规范中.另一个比較重要的改进,就是Object对象的增强.ES5为Object新增了一系列函数.用于编写安全健壮的程序,今天我们就来一一介绍它们的用法. 以下就是ES5中Object新增的函数 ...
- MySQL远程訪问的两个问题
安装MySQL后,不能远程訪问.进行例如以下配置就可以 连接后,依旧不能连接,报例如以下错误: 1042 - Can't get hostname for your address 解决方法在my.i ...