C语言里可以用printf(),%f来实现浮点数的格式化输出,用cout呢。。。?
下面的方法是在网上找到的,如果各位有别的办法谢谢留下... iomanip.h是I/O流控制头文件,就像C里面的格式化输出一样.以下是一些常的: dec 置基数为10 相当于"%d"
hex 置基数为16 相当于"%X"
oct 置基数为8 相当于"%o"
setfill(c) 设填充字符为c
setprecision(n) 设显示小数精度为n位
setw(n) 设域宽为n个字符
setioflags(ios::fixed) 固定的浮点显示
setioflags(ios::scientific) 指数表示
setiosflags(ios::left) 左对齐
setiosflags(ios::right) 右对齐
setiosflags(ios::skipws 忽略前导空白
setiosflags(ios::uppercase) 16进制数大写输出
setiosflags(ios::lowercase) 16进制小写输出
setiosflags(ios::showpoint) 强制显示小数点
setiosflags(ios::showpos) 强制显示符号 #include <iomanip>
use namespace std; double d=11.23456;
cout<<d<<endl; //直接输出只能输出6位数,包括整数部分和小数部分
cout<<setprecision()<<d<<endl; //精度为3,输出3位数
cout<<setiosflags(ios::fixed)<<d<<endl;//精度为3,定点输出,输出3位小数
cout<<setiosflags(ios::fixed)<<setprecision()<<d<<endl;//位数不够,末尾添0 输出结果:
11.2346
11.2
11.23456
11.2345600 C++格式化输出浮点数 view plaincopy to clipboardprint?
.#include <iostream>
.using std::cout;
.using std::endl;
.using std::fixed;
.using std::scientific;
.
.int main()
.{
. double x = 0.001234567;
. double y = 1.946e9;
.
. cout << "Displayed in default format:" << endl << x << '\t' << y << endl;
.
. cout << "\nDisplayed in scientific format:" << endl << scientific << x << '\t' << y << endl;
.
. cout << "\nDisplayed in fixed format:" << endl << fixed << x << '\t' << y << endl;
. return ;
.}
#include <iostream>
using std::cout;
using std::endl;
using std::fixed;
using std::scientific; int main()
{
double x = 0.001234567;
double y = 1.946e9; cout << "Displayed in default format:" << endl << x << '\t' << y << endl; cout << "\nDisplayed in scientific format:" << endl << scientific << x << '\t' << y << endl; cout << "\nDisplayed in fixed format:" << endl << fixed << x << '\t' << y << endl;
return ;
} Displayed in default format:
0.00123457 1.946e+009 Displayed in scientific format:
1.234567e-003 1.946000e+009 Displayed in fixed format:
0.001235 1946000000.000000 view plaincopy to clipboardprint?
.#include <iostream.h>
.
.main(void)
.{
. float a=100100.0, b=0.08;
. cout.setf(ios::right|ios::scientific|ios::showpoint);
. cout.width();
. cout <<(-a*b);
.
. return ;
.}
#include <iostream.h> main(void)
{
float a=100100.0, b=0.08;
cout.setf(ios::right|ios::scientific|ios::showpoint);
cout.width();
cout <<(-a*b);
return ;
} -8.008000e+003 view plaincopy to clipboardprint?
.#include <iostream>
.#include <iomanip>
.#include <limits>
.using std::cout;
.using std::endl;
.using std::setprecision;
.using std::numeric_limits;
.
.int main() {
. const double pi = 3.14;
. cout << endl;
.
. for(double radius = . ; radius <= 3.0 ; radius += .)
. cout << "radius = "
. << setprecision(numeric_limits<double>::digits10 + )
. << std::scientific << radius<< " area = "
. << std::setw() << setprecision()<< std::fixed << pi * radius * radi
.us << endl;
. return ;
.}
#include <iostream>
#include <iomanip>
#include <limits>
using std::cout;
using std::endl;
using std::setprecision;
using std::numeric_limits; int main() {
const double pi = 3.14;
cout << endl; for(double radius = . ; radius <= 3.0 ; radius += .)
cout << "radius = "
<< setprecision(numeric_limits<double>::digits10 + )
<< std::scientific << radius<< " area = "
<< std::setw() << setprecision()<< std::fixed << pi * radius * radi
us << endl;
return ;
} radius = 2.0000000000000001e-001 area = 0.125600
radius = 4.0000000000000002e-001 area = 0.502400
radius = 6.0000000000000009e-001 area = 1.130400
radius = 8.0000000000000004e-001 area = 2.009600
radius = 1.0000000000000000e+000 area = 3.140000
radius = 1.2000000000000000e+000 area = 4.521600
radius = 1.3999999999999999e+000 area = 6.154400
radius = 1.5999999999999999e+000 area = 8.038400
radius = 1.7999999999999998e+000 area = 10.173600
radius = 1.9999999999999998e+000 area = 12.560000
radius = 2.1999999999999997e+000 area = 15.197600
radius = 2.3999999999999999e+000 area = 18.086400
radius = 2.6000000000000001e+000 area = 21.226400
radius = 2.8000000000000003e+000 area = 24.617600 view plaincopy to clipboardprint?
.#include <iostream>
.#include <iomanip>
.#include <string>
.
.using namespace std;
.
.int main( ) {
.
. ios_base::fmtflags flags = cout.flags( );
.
. double pi = 3.14285714;
.
. cout << "pi = " << setprecision() << pi << '\n';
.
. cout.flags(flags);
.}
#include <iostream>
#include <iomanip>
#include <string> using namespace std; int main( ) { ios_base::fmtflags flags = cout.flags( ); double pi = 3.14285714; cout << "pi = " << setprecision() << pi << '\n'; cout.flags(flags);
} pi = 3.1429 view plaincopy to clipboardprint?
.#include <iostream>
.#include <iomanip>
.#include <math.h>
.using namespace std;
.int main()
.{
. double root2 = sqrt( 2.0 );
. int places;
.
. cout << setiosflags( ios::fixed)
. << "Square root of 2 with precisions 0-9.\n"
. << "Precision set by the "
. << "precision member function:" << endl;
.
. for ( places = ; places <= ; places++ ) {
. cout.precision( places );
. cout << root2 << '\n';
. }
.
. cout << "\nPrecision set by the "
. << "setprecision manipulator:\n";
.
. for ( places = ; places <= ; places++ )
. cout << setprecision( places ) << root2 << '\n';
.
. return ;
.}

[转载] c++ cout 格式化输出浮点数、整数及格方法的更多相关文章

  1. [ZZ]c++ cout 格式化输出浮点数、整数及格式化方法

    C语言里可以用printf(),%f来实现浮点数的格式化输出,用cout呢...?下面的方法是在网上找到的,如果各位有别的办法谢谢留下... iomanip.h是I/O流控制头文件,就像C里面的格式化 ...

  2. C++ cout格式化输出(转)

    C++ cout格式化输出(转) 这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等.通过本文,您可以完全脱离scanf/pr ...

  3. C++ cout格式化输出完全攻略

    写算法题的时候突然发现自己忘记基本的C++:cout格式化输出了,赶紧拉出以前的C++学习笔记重新看一看. 部分内容来自教程:C语言中文网(一个很棒的网站) 有时希望按照一定的格式进行输出,如按十六进 ...

  4. C++格式化输出浮点数

    主要内容 介绍C++中如何格式化输出浮点数. 控制浮点数输出格式需要包含iomanip头文件. 使用fixed来控制输出的浮点数的小数位是固定的.可参考http://en.cppreference.c ...

  5. //%f表示以十进制格式化输出浮点数 %.2f

    //%f表示以十进制格式化输出浮点数 String s1 ="评分: %.1f"; String s2 = String.format(s1, 8.0); System.out.p ...

  6. C++ cout 格式化输出方法

    C语言里可以用printf(),%f来实现浮点数的格式化输出,用cout呢...? iomanip是I/O流控制头文件,就像printf的格式化输出一样. 以下是一些常用的: dec 置基数为10 相 ...

  7. C++ cout格式化输出

    表1:C++ 流操纵算子 流操纵算子 作  用 *dec 以十进制形式输出整数 常用 hex 以十六进制形式输出整数 oct 以八进制形式输出整数 fixed 以普通小数形式输出浮点数 scienti ...

  8. C++ cout格式化输出(输出格式)完全攻略

    使用流操作算子 它们都是在头文件 iomanip 中定义的:要使用这些流操纵算子,必须包含该头文件. 表1:C++ 流操纵算子 流操纵算子 作  用 *dec 以十进制形式输出整数 hex 以十六进制 ...

  9. cout 格式化输出

    一直习惯于C语言的printf函数来打印,突然有一天要用cout来打印,发现有点不适应. 原来cout也是有格式化输出的. 首先要引入头文件 #include<iostream> // 在 ...

随机推荐

  1. poj 2013 Symmetric Order 解题报告

    题目链接:http://poj.org/problem?id=2013 设长度非递减的字串序列为s[1]...s[n].设计递归子程序print(n),其中n为字串序号,每分析1个字串,n=n-1. ...

  2. PHP--TP框架----操作数据库

    //操作数据库                    //$attr = $m->select(); //查询所有数据                    //$attr = $m->s ...

  3. (转)Android中的Shape使用总结

    http://blog.csdn.net/bear_huangzhen/article/details/24488337 在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的 ...

  4. decltype

    在C++中,decltype作为操作符,用于查询表达式的数据类型.decltype在C++11标准制定时引入,主要是为泛型编程而设计,以解决泛型编程中,由于有些类型由模板参数决定,而难以(甚至不可能) ...

  5. Android实现边缘凹凸的View

    转载 最近做项目的时候遇到一个卡劵的效果,由于自己觉得用图片来做的话可以会出现适配效果不好,再加上自己自定义view方面的知识比较薄弱,所以想试试用自定义View来实现.但是由于自己知识点薄弱,一开始 ...

  6. Linux网络编程必看书籍推荐

    首先要说讲述计算机网络和TCP/IP的书很多. 先要学习网络知识才谈得上编程 讲述计算机网络的最经典的当属Andrew S.Tanenbaum的<计算机网络>第五版,这本书难易适中. &l ...

  7. SVN常见错误和版本冲突解决

    之前在Eclipse下面误删除了svn的一些插件包,后来重装了就问题重重,在这里还是建议, Windows下SVN最好使用桌面版,在文件管理器下面更新和提交. 1.常见错误整理 #, c-format ...

  8. wifi开发总结

    转自:http://blog.csdn.net/kakaxi1o1/article/details/35625019 Unable to open connection to supplicant o ...

  9. C# 工程中引用出现感叹号

    问题:在工程中引用出现感叹号 原因1:  这是由于之前引用的Dll文件不见了. 右键有感叹号的项,然后选择 “属性” 里边有一个路径属性 这个路径就是之前这个Dll文件的路径,现在这个文件不在了,你需 ...

  10. 让/etc/profile文件修改后立即生效(转)

    方法1:让/etc/profile文件修改后立即生效 ,可以使用如下命令:# .  /etc/profile注意: . 和 /etc/profile 有空格方法2:让/etc/profile文件修改后 ...