【C++】格式化输入输出 【总结】【持续补充】

输出

1.默认浮点输出6位,自动四舍五入

cout << 0.123456789 << endl;//0.123457
cout << 3.123456789 << endl;//3.12346

头文件#include<iomanip>

2.保留小数位数

流操作符:fixed 

作用范围:之后所有,四舍五入

cout << fixed << setprecision(4);	
float big = 12345;
cout  << big << endl;// 12345.0000
float middle = 1.2345;	
cout << middle << endl;// 1.2345
float mini = 0.12345;
cout << mini << endl;//0.1235

3.保留有效位数(整数位数+小数位数)

输出控制符:setprecision

输出形式:小数

作用范围:到下一个setprecision


float big = 12345;
cout << big <<" after " << setprecision(4) << big << endl;
//12345 after 1.234e+04
float middle = 1.2345;	
cout << middle <<" after " << setprecision(4) << middle << endl;
//1.2345 after 1.235
float mini = 0.12345;
cout << mini <<" after " << setprecision(4) << mini << endl;
//0.12345 after 0.1235

4.宽度与填充

设置宽度:setw

作用范围:仅对后续<<生效

注意:小数点也算一个宽度,若setw(n)后接的数值宽度大于n,则会全部输出

填充字符:setfill

默认:空格

int a=1;
cout << setw(5) << setfill('0') << a;
//00001

5. 向下取整,向上取整,四舍五入

int a=3.5;
cout<<ceil(a)<<endl;   //向上取整
cout<<(a>(int)a?(int)a+1:(int)a)<<endl;
//4
cout<<floor(a)<<endl;   //向下取整
cout<<(int)a<<endl;
//3
cout<<round(a)<<endl;   //四舍五入
cout<<(int)(a+0.5)<<endl;
//4

6.setiosflags

1.设置精度固定

作用范围:后面所有(直到下一个设置精度固定)

注意:当只用setprecision设置精度只能是保留小数位数,不能输出小数点后多余的零,但是和setiosflags合用则可以输出

cout<<setprecision(8)<<setiosflags(ios::fixed);  //设置小数点后精度为8位 设置精度固定

2.左右对齐:

作用范围:直到下一个设置对齐

cout<<setiosflags(ios::right);  //设置数据右对齐

3.有无小数点显示

setiosflags(ios::fixed|ios::showpoint)

当setprecision( )的精度为0的时候,有showpoint,结果就会显示小数点,没showpoint,就不显示小数点

输入

1.cin

cin忽略空格和换行符

只能输入没有空格的字符串,当输入中含有空格,则只能输出空格之前的字符

2.cin.get()

可以接收空格,遇回车结束输入

char a[50];
cin.get(a,50);

3.cin.getline()

同cin.get()函数类似,也可接收空格,遇回车结束输入

char a[50];
cin.getline(a,50);

4.string getline

若定义变量为string类型,则要考虑getline()函数

注意:输入两次回车才能结束输入

#include <string>
string a;
getline(cin,a);
  • 18
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值