参考:

http://www.cnblogs.com/wushuaiyi/p/4439361.html

http://blog.csdn.net/edricbjtu/article/details/41082597

C 语言中 printf () 函数可以非常方便控制保留 几位小数输出,在 C++ 当中也是可以控制小数保留,cout () 和 printf () 还是有一些区别。

需要头文件#include <iomanip>

  • setprecision()来用来保存有效数字,fixed和setprecision()一起用就变成保存小数点后有效数字。
  • fixed 可以通过 cout.unsetf(ios::fixed); 这段代码关掉。不然会一直开着。
  • fixed有个地方需要注意的是可以保存的有效数字包括0,不开fixed的话,即使保存3个有效数字,小数点后的0也会自动省略。即 1.2 要是setprecision(3) 结果还是1.2 而不是1.20. 所以通常想要像在printf()中一样使用,都是要开fixed的!

下面是测试代码,自己打一遍过一下,就更熟悉了。

 #include <iostream>
#include<iomanip>
using namespace std; int main()
{
//需要头文件#include <iomanip>
double a=46.21534,b=1.20001;
cout.setf(ios::fixed); //功能和下一行的fixed功能一样,同时写没关系
cout<<fixed<<setprecision()<<b<<endl; //输出结果为1.20
cout.unsetf(ios::fixed);
cout << setprecision() << b<<endl; //输出结果为1.2
cout<<setprecision()<<a<<endl; //输出结果为46.215
cout<<setprecision()<<a<<endl; //输出结果为5e+001
return ;
}

C++ cout输出保留小数的更多相关文章

  1. C++ cout 如何保留小数输出

    参考 : http://upliu.net/how-cout-out-2-precision.html 大家都知道用 C 语言中 printf () 函数可以非常方便控制保留 几位小数输出 不过在 C ...

  2. c/c++输出保留小数

    c语言中,用print可以有格式符号,例如想让a保留两位小数 float a; print( "%.2f", a); 注意这里如果a是0.1, 那么打印出来会自动补0,也就是结果显 ...

  3. codevs 2988 保留小数 2

    2988 保留小数 2  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver       题目描述 Description 这个难度是吸引你点进来的.(其实难度挺 ...

  4. NOI-1.1-04输出保留3位小数的浮点数

    04:输出保留3位小数的浮点数 总时间限制:  1000ms 内存限制:  65536kB 描述 读入一个单精度浮点数,保留3位小数输出这个浮点数. 输入 只有一行,一个单精度浮点数. 输出 也只有一 ...

  5. c++保留小数问题,如有不足或错误,欢迎指出

    #include<iostream> #include <iomanip> using namespace std; int main() { double a; cin> ...

  6. c/c++ 整数除预算保留小数

    两个整数相除会自动省略小数点后的小数位即使下面这种: int a,int b; int a = 4; int b = 3; double d = a/b; d= 1.0000000; -------- ...

  7. 格式化 float 类型,保留小数点后1位

    """  练习 :   小明的成绩从去年的72分提升到了今年的85分,请计算小明成绩提升的百分点,   并用字符串格式化显示出'xx.x%',只保留小数点后1位: &qu ...

  8. java中double变量保留小数问题

    (转载自玄影池扁舟) 做java项目的时候可能经常会遇到double类型变量保留小数的问题,下面便把我的经验做个简短的总结: java中double类型变量保留小数问题大体分两种情况: (一):小数点 ...

  9. php number_format()保留小数点后几位

    [PHP_保留两位小数的相关函数] php保留两位小数并且四舍五入 Php代码   1     $num = 123213.666666;  2     echo sprintf("%.2f ...

随机推荐

  1. SSH 登录失败:Host key verification failed 的处理方法

    原因就是你之前已经登录过这个服务器了然后改系统啥的了.导致目标主机 key 值不正确.直接把本机的key文件删除即可 sudo rm /home/yourname/.ssh/known_hosts

  2. Java21个基础知识点

    类装载器就是寻找类的字节码文件,并构造出类在JVM内部表示的对象组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: (1) 装载:查找和导入Class文件: (2) 链接:把类的二进制 ...

  3. python基础===修改属性的值

    可以以三种不同的方式修改属性的值:直接通过实例进行修改:通过方法进行设置:通过方法进行递增(增加特定的值).下面依次介绍这些方法. class Car(): def __init__(self, ma ...

  4. ktime使用例子【原创】

    #include <linux/kernel.h>#include <linux/init.h>#include <linux/module.h>#include ...

  5. sicily 1052. Candy Sharing Game

    Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description A number of students sit in a circle ...

  6. javascript 线程问题小记

    大家都知道javascript是单线程执行的,alert之后,就无法执行以下的函数,浏览器是按照从上到下的顺序来安排解析显示的. 其实虽然javascript是单线程的,但是浏览器是多线程的,典型的浏 ...

  7. Leetcode 之Evaluate Reverse Polish Notation(41)

    很简单的一道题,定义一个栈保留操作数,遇操作符则弹出运算即可. bool isOperator(string &op) { //注意用法 && string("+-* ...

  8. django的事务

    在某些时候,你可能会在视图修改两张数据表.并且想让他们同时成功或者同时失败.这就是事务的原子性(atomicity).在django中应该怎么做呢? 详细可以参考官方文档:https://yiyibo ...

  9. HDU-5317

    RGCDQ Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  10. 596. Classes More Than 5 Students

    There is a table courses with columns: student and class Please list out all classes which have more ...