西安交大C++程序设计:流与输入输出操作详解

版权申诉
0 下载量 201 浏览量 更新于2024-06-29 收藏 786KB PDF 举报
本篇文档是西安交通大学计算机程序设计实验报告,主题为"标准库与输入输出流",针对C++语言的相关知识展开。实验旨在让学生掌握C++语言中输入与输出操作,以及流与流类库的使用方法。以下是详细的内容分析: **实验一:整数与浮点数的打印** 1. 实验题目要求学生编写一个程序,使用不同域宽(范围0到10)打印整数12345和浮点数1.2345。通过这个过程,学生们可以观察到当域宽小于实际需要时,C++的处理机制。关键知识点包括: - **域宽与精度**:域宽用于指定输出字段的宽度,精度决定小数点后的位数。如果域宽不足以容纳整个数值,C++会自动填充空格补足,这体现了流控制的灵活性。 - **精度设置**:`cout.precision(WIDTH)`是全局设置,一旦定义,对后续的输出都有影响,直到被重新设定。 - **域宽设置**:`cout.width(WIDTH)`仅在当前输出语句中生效,每输出一次都需要重新定义域宽。 **实验二:华氏温度到摄氏温度的转换** 2. 第二个任务是将华氏温度转换为摄氏温度,并以3位浮点精度输出。具体步骤包括: - **格式化输出**:通过`cout.precision(3)`设置浮点数的输出精度为3位。 - **温度转换**:利用公式`Celsius = (5.0 / 9.0) * (Fahrenheit - 32)`计算摄氏温度。 - **显示符号**:使用`ios::showpos`和`unsetf(ios::showpos)`来控制温度值前的正负号显示。这展示了C++流类库如何处理格式化输出的细节。 通过这两个实验,学生不仅能够巩固对C++输入输出操作的理解,还能学习到流类库如`iostream`中的控制符和格式化功能的运用。同时,对错误处理和适应性输出的处理也有所提升,有助于提高编程实践能力。