输入输出流的控制符

   输入输出流的控制符
  

                

                  

 dec 

 设置整数为十进制

 hex

 设置整数为八进制

 oct

 设置整数为十六进制

 setbase(n)

 设置整数为n进制(n=8,10,16)

 setfill(n)

设置字符填充,c可以是字符常或字符变量

 setprecision(n)

 设置浮点数的效数字为

 setw(n)

 设置字段宽度为n

 setiosflags(ios::fixed)

 设置浮点数以固定的小数位数显示

 setiosflags(ios::scientific)  

 设置浮点数以科学计数法表示

 setiosflags(ios::left)

 输出左对齐

 setiosflags(ios::right)

 输出右对齐

 setiosflags(ios::skipws)

 忽略前导空格

 setiosflags(ios::uppercase)

在以科学计数法输出E与十六进制输出X以大写输出,否则小写。

 setiosflags(ios::showpos)

 输出正数时显示"+"

 resetiosflags() 

终止已经设置的输出格式状态,在括号中应指定内容


程序代码:

  1. #include <iostream.h>
  2. #include <iomanip.h>    //使用输入输出流控制符除了要加头文件<iostream>外,还要加<iomanip>头文件
  3. void testdouble()
  4. {
  5.     double d1=12.345678901234567;
  6.     cout<<d1<<endl;      
  7. }
  8. int main()
  9. {
  10.     cout<<"/"123456/"的十进制位:"<<dec<<123456<<",八进制为: "<<oct<<123456<<",十六进制为:"<<hex<<123456<<'/n'<<endl;
  11.     //dec:返回数值的十进制,oct返回是指的八进制,hex返回数值的十六进制。
  12.     cout<<dec;     //恢复为十进制格式
  13.     cout<<setfill('*')<<setw(10)<<setiosflags(ios::left)<<123456<<'/n'<<endl;   
  14.     //setfill(c):设置字符填充,c可以是字符常或字符变量,只对本行有用。
  15.     // setw(n):设置字段宽度为n位,如果n小于所要返回的字符的宽度则保留字符原样输出
  16.     //setiosflags(ios::left):左对齐,setiosflags(ios::right):右对齐
  17.    
  18.     cout<<resetiosflags(ios::left);   //终止已设置的输入输出流格式,本例去掉左对齐方式
  19.    
  20.     double d=12.345678901234567;
  21.     
  22.     testdouble();       //之前没有使用输入输出流控制符,d1默认格式输出(精度为6)
  23.     cout<<"之前没有使用输入输出流控制符,d1默认格式输出(精度为6)"<<endl;
  24.     cout<<setprecision(16)<<d<<endl;  
  25.     //设置浮点数的精度,n为有效数字,采用四则五入法舍位,setprecision(n)中,n小于等于16有效。
  26.     testdouble();  
  27.     //之前使用了setprecision(),此函数保留前面的宽度设置。
  28.    
  29.     cout<<setiosflags(ios::fixed)<<setprecision(17)<<d<<endl;
  30.     //setiosflags(ios::fixed):设置浮点数以固定的小数位数显示,8为8位小数,所指定的小数位如果大于小数本身小数位则补0。
  31.     //使用setiosflags(ios::fixed)与不使用的区别:使用设置小数点后的精度,不使用是设置整个数的精度
  32.          
  33.     cout<<resetiosflags(ios::fixed);  
  34.   
  35.     cout<<setiosflags(ios::scientific)<<setiosflags(ios::uppercase)<<setprecision(4)<<d<<'/n'<<endl;    
  36.    // setiosflags(ios::scietific):用科学计数法表示,4为指定小数位分为四位,且第四位四舍五入。
  37.    //setiosflags(ios::uppercase) : 在以科学计数法输出E与十六进制输出X以大写输出,否则小写。
  38.  return 0;
  39. }
如果使用了using namespace std,输出的结果略有不同,可能是标准库和以前的头文件略有不同






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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值