当前位置: 首页 > 文档资料 > C++大学教程 >

14.15 自测练习

优质
小牛编辑
125浏览
2023-12-01

14.1 填空:

a) 计算机处理的所有数据项最终都是——和——的组合。
b) 计算机所能处理的最小数据项称为——。
c) 一个——是一组相关的记录。
d) 数字、字母和专门的符号称为——。
e) 一组相关的文件称为——。
f) fstream、ifstream和ofstream文件流类的成员函数——关闭文件。
g) istream成员函数——从指定流中读取一个字符。
h) istream成员函数——和——从指定流中读取一行数据。
i) fstream,ifstream和ofstream文件流类成员函数——打开一个文件。
j) 以随机访问方式读取文件中的数据通常使用istream成员函数——。
k) istresm和ostrcam类成员函数——、——把文件位置指针重定位到输入流与输出流中指定的位置。

14.2 判断下列说法是否正确。如果不正确,请说明原因。

a) 函数read不能从标准输入流对象cin读取数据。
b) 程序员必须显式地生成cin、cout、Cerr和clog对象。
c) 程序必须明确地调用函数close关闭与fstream、ifstream和ofstream对象相关的文件。
d) 如果文件位置指针没有指向顺序访问文件的起始位置,要从文件起始位置读取数据必须关闭文件然后再打开它。
e) ostream成员函数write能够把数据写入标准输出流cout。
f) 更新顺序访问文件中的数据一般不会重定义其他数据。
g) 查找随机访问文件中的指定记录不必从头逐条查找。
h) 随机访问文件中的记录必须有统一的长度。
i) 函数seekp和seekg只能定位相对于文件起始点的位置。

14.3 用一条语句分别完成下列要求。假定每一条语句用于同一个程序。

a) 编写一条语句,打开以便输人数据的文件oldmast.dat,用ifstream对象inOldMaster。
b) 编写一条语句,打开以便输入数据的文件trans.dat,用ifstream对象Transaction。
c) 编写一条语句,打开以便输出(以及建立)数据的文件newmast.dat,用ofstream对象outNewMaster。
d) 编写一条语句,读取文件oldMast.dat中的一条记录。记录是由整数accountNum、字符串name和浮点数currntBalance组成的,用ifstream对象inOldMaster。
e) 编写一条语句,读取文件trans.dat中的一条记录。记录是由整数accountNum和浮点数dollarAmount组成的,用ifstream对象inTransaction。
f) 编写一条语句,向文件newmast.dat中写入一条记录。记录是由整数aecoumNum、字符串name和浮点数currentBalance组成的,用ofstream对象outNewMaster。

14.4 指出下列程序段中的错误,并说明如何纠正。

a) 没有打开ofstream对象outPayable所引用的文件(payables.dat)。
outPayable<<account<<company<<amount<<endl;
b) 下面一条语句要从文件payables.dat中读取一条记录。ifstream对象inPayable引用该文件,istream对象inReceivable引用文件receivables.dat。
inReceivable>>account>>company>>amount;
c) 打开文件tools.dat,在不删除当前数据的情况下把数据添加到文件中。
ofstream outTools("tools.dat",ios::out);