关闭

cout的输出格式初探3

标签: coutiostreamsetfprecisionsetiosflags
405人阅读 评论(0) 收藏 举报
分类:
#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
	double f=2.0/3.0,f1=0.000000001,f2=-9.9;
	cout<<f<<' '<<f1<<' '<<f2<<endl; //正常输出
	cout.setf(ios::showpos); //强制在正数前加+号 //表示出正负号
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout.unsetf(ios::showpos); //取消正数前加+号
	cout.setf(ios::showpoint); //强制显示小数点后的无效0
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout.unsetf(ios::showpoint); //取消显示小数点后的无效0
	cout.setf(ios::scientific); //科学记数法
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout.unsetf(ios::scientific); //取消科学记数法
	cout.setf(ios::fixed); //按点输出显示
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout.unsetf(ios::fixed); //取消按点输出显示
	cout.precision(18); //精度为18,正常为6
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout.precision(6); //精度恢复为6
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	
	cout<<"----------------------------"<<endl;
	
	//使用操作算法,效果相同
	cout<<f<<' '<<f1<<' '<<f2<<endl; //正常输出
	cout<<setiosflags(ios::showpos); //强制在正数前加+号
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout<<resetiosflags(ios::showpos); //取消正数前加+号
	cout<<setiosflags(ios::showpoint); //强制显示小数点后的无效0
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout<<resetiosflags(ios::showpoint); //取消显示小数点后的无效0
	cout<<setiosflags(ios::scientific); //科学记数法
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout<<resetiosflags(ios::scientific); //取消科学记数法
	cout<<setiosflags(ios::fixed); //按点输出显示
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout<<resetiosflags(ios::fixed); //取消按点输出显示
	cout<<setprecision(18); //精度为18,正常为6
	cout<<f<<' '<<f1<<' '<<f2<<endl;
	cout<<setprecision(6); //精度恢复为6
	cout<<f<<' '<<f1<<' '<<f2<<endl; 

	return 0;
}

程序运行结果如下图:


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

cout的输出格式初探

在C++中,cout代表的是标准输出设备,即显示器,相对于C语言中所使用的printf函数,cout显得更为灵活。下面以30、300和1024三个数为例子,简单说明cout输出时所选格式的输出。cout默认以十进制方式输出数值,也可以设置为八进制(oct)、十六进制(hex)输出方式,同时还可以显示...
  • GarfieldEr007
  • GarfieldEr007
  • 2015-07-08 20:28
  • 518

cout标准输出流常用控制格式

使用这些格式需要声明包含 long flags( ) const 返回当前的格式标志。  long flays(long newflag) 设置格式标志为newflag,返回旧的格式标志。  long setf(long bits) 设置指定的格式标志位,返回旧的格式标...
  • snail0428
  • snail0428
  • 2016-07-31 12:59
  • 859

c++中用cout函数怎样实现格式输出

#include <iostream> #include <iomanip>//不要忘记包含此头文件 using namespace std; int main() { int a; cout<<"input a:"; cin>...
  • Code_star_one
  • Code_star_one
  • 2017-04-24 17:43
  • 355

C/C++中printf和C++中cout的输出格式

## C/C++中printf和C++中cout的输出格式 ## 一、 Printf 输出格式 C中格式字符串的一般形式为: %[标志][输出最小宽度][.精度][长度]类型,其中方括号[]中的项为可选项。各项的意义介绍如下: 1.类型类型字符用以表示输出数据的类型,其格式符和意义下表所示:...
  • zzqllh
  • zzqllh
  • 2015-11-25 10:29
  • 3262

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

这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等。通过本文,您可以完全脱离scanf/printf,仅使用cout来完成一切需要的格式化输入输出功能(从非性能的角度而言)。更进一步而言,您还可以在<sstream>...
  • qq_21120027
  • qq_21120027
  • 2015-12-22 19:21
  • 3183

C++ cout格式化输出

将 cout 的 flag 保存到变量, 以便修改后的恢复 ostream::fmtflags old = cout.flag() ; // 无参将返回当前 flag 值 cout.flag(old) ; // 恢复...
  • dongfengkuayue
  • dongfengkuayue
  • 2014-03-14 11:10
  • 2728

C++的cout语句格式控制输出

简介 在c语言的prinf()中,可以格式的控制输出。但是c++中的cout应该怎么格式的控制输出呢? setw(n),控制预设宽度。    setw()只对其后面紧跟的输出产生作用。若输入的内容超过setw()设置的长度,则按实际长度输出。默认右对齐。 setfill(char...
  • u014024390
  • u014024390
  • 2015-01-15 10:35
  • 812

cout的输出格式初探2

#include #include using namespace std; int main() { cout<<"Chapter 1"<<endl; cout<<" "; cout.setf(ios::lef...
  • GarfieldEr007
  • GarfieldEr007
  • 2015-07-09 09:21
  • 396

C++ cout输出格式总结

这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等。通过本文,您可以完全脱离scanf/printf,仅使用cout来完成一切需要的格式化输入输出功能(从非性能的角度而言)。更进一步而言,您还可以在、上使用这些格式化操作,从而...
  • u010525694
  • u010525694
  • 2017-11-20 11:45
  • 100

如何在C++中使用cout进行高级的格式化输出操作

这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等。通过本文,您可以完全脱离scanf/printf,仅使用cout来完成一切需要的格式化输入输出功能(从非性能的角度而言)。更进一步而言,您还可以在、上使用这些格式化操作,从而...
  • qaxzplmokn3
  • qaxzplmokn3
  • 2017-05-19 09:16
  • 532
    个人资料
    • 访问:5355352次
    • 积分:62059
    • 等级:
    • 排名:第48名
    • 原创:427篇
    • 转载:3852篇
    • 译文:0篇
    • 评论:338条
    最新评论