《C++程序设计:原理与实践》Chapter11总结与练习

通常,输入与输出是很难被处理的,因为人类的喜好与习惯并不遵从简单的、易于阐述的原则和直接的数学法则,所以I/O处理对程序员来说比较棘手,第11章的内容就是讲述如何对格式化获取输入、格式化输出以及自定义输入与输出流。

本文主要用于梳理《C++程序设计:原理与实践》第11章:定制输入与输出 的内容,包括对一些常用操纵符的总结以及章节最后简单练习的编程实现。


1. 声明一个整数birth_year,以十进制、十六进制、八进制格式输出birth_year,并标出每个输出值基数的名字。

int birth_year = 1996;
int current_year = 2020;

cout<< birth_year<< "\t(decimal)\n" << hex<< birth_year<< "\t(hexadecimal)\n"
    << oct<< birth_year << "\t(octal)\n";

2. 让输出的每个值都显示基数

十进制没有前缀,八进制前缀加0,十六进制前缀加0x

showbase操作是持久的。

// 显示基数
cout<< showbase;

// 取消前缀
cout<< noshowbase;

3. 读入八进制、十六进制数

int a, b, c, d;
cin>> a>> oct>> b>> hex>> c>> d;  // 以十进制读入a,以八进制读入b,以十六进制读入c,d

4. 分别以defaultfloat、fixed、scientific格式输出浮点数1234567.89,并比较其精度。

cout<< 1234567.89<< "\t(defaultfloat)\n"
    << fixed<< 1234567.89 << "\t(fixed)\n"
    << scientific<< 1234567.89<< "\t(scientific)\n";

比较输出结果:

fixed的精度最高。

fixed小数表示
scientific

科学记数法

defaultfloat

在defaultfloat的精度范围内自动选择fixed或scientific中更为精确的一种表示。

默认设置下,defaultfloat格式使用6位数字来输出一个浮点值,四舍五入。

// 设置精度
setprecision() 
浮点数精度
defaultfloat精度为数字的个数
scientific精度为小数点之后的数字个数
fixed精度为小数点之后的数字个数

5. 设置位宽

setw();

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值