首页 理论教育C++程序设计基础教程:数据的输入输出

C++程序设计基础教程:数据的输入输出

【摘要】:C++的标准输入/输出流库用于数据的输入/输出,用于输入/输出的流库包含在头文件iostream.h中。表1.4常用的输入/输出流操纵符显示常数使用cout可以显示字符串和数字,并可显示多个值。因此,用户输入数据时要避免输入的数据超出指定变量的值域。程序的执行结果如下:注意:使用cin输入一个字符串时,其中不能含有空格,否则,cin认为输入结束。

输入/输出是程序的基本功能。C++的标准输入/输出流库用于数据的输入/输出,用于输入/输出的流库包含在头文件iostream.h中。

1.输出

C++定义了运算符“<<”的iostream类,而“<<”就是用于处理内部类型的输出。使用cout输出流可在屏幕上显示字符和数字。C++提供了一些操纵符,可以直接嵌入到输入/输出语句中来实现输入/输出格式控制。表1.4列出了几个常用的输入/输出流操纵符。

注意:在使用setprecision和setw操纵符时应在程序开头包含iomanip.h头文件。

表1.4 常用的输入/输出流操纵符

(1)显示常数

使用cout可以显示字符串和数字,并可显示多个值。

【例1.3】分析以下程序的执行结果。

解:上述程序中,使用cout输出各数值。程序的执行结果如下:

(2)八进制和十六进制数的输出

在某些情况下,程序需要以八进制或十六进制数的形式输出。C++提供了简单的实现方法:只要在输出流中输出操纵符dec(十进制)、oct(八进制)或hex(十六进制)即可。

【例1.4】分析以下程序的执行结果。

解:上述程序中,分别以十进制、八进制和十六进制输出n的值。程序的执行结果如下:

十进制:100

八进制:144

十六进制:64

注意:一旦使用了进制操纵符,该操纵符的作用域一直连续到程序结束,或者遇到另一个进制操纵符。

(3)控制输出宽度(www.chuimin.cn)

C++提供的setw操纵符可以指定每个数值占用的宽度,即这个字符占用的最小字符长度

【例1.5】分析以下程序的执行结果。

解:上述程序中,使用setw操纵符以不同的宽度输出f的值。程序的执行结果如下:

从执行结果看到,当用setw设置的宽度小于实际宽度时,该设置无效。

注意:setw操纵符只对紧跟着它的数值有效。如果要为多个数值设定宽度,必须多次使用setw操纵符。

(4)控制输出精度

C++提供的setprecision操纵符可以设置显示数值的精度。

【例1.6】分析以下程序的执行结果。

解:上述程序中,通过setprecision操纵符以不同的数值的精度输出d的值。程序的执行结果如下:

注意:一旦使用了setprecision操纵符,该操纵符的作用域一直连续到程序结束,或者遇到另一个setprecision操纵符。

2.输入

C++提供了输入流cin,可以利用输入流cin读取键盘输入的字符和数值,并把它赋给指定的变量。从键盘上输入的数据通过cin接收,再由提取运算符“>>”送到程序指定的变量中。因此,用户输入数据时要避免输入的数据超出指定变量的值域。

【例1.7】分析以下程序的执行结果。

解:上述程序中,用cin接受用户输入的两个整数,然后输出这两个整数之和。程序的执行结果如下:

注意:使用cin输入一个字符串时,其中不能含有空格,否则,cin认为输入结束。可以使用cin的成员函数getline来接收含有空格的字符串,其使用格式如下:

其中,len指出输入的最多字符个数。