(c流类库与输入输出习题答案.doc
文本预览下载声明
1.概念填空题
1.1头文件iostream中定义了 4个标准流对象 cin , cout , cerr , clog 。其中标准输入流对象为 cin ,与 键盘 连用,用于输入; cout 为标准输出流对象,与显示器 连用,用于输出。
1.2用标准输入流对象cin与提取操作符连用进行输入时,将 空格 与 回车 当作分隔符,使用 get() 成员函数进行输入时可以指定输入分隔符。
1.3每一个输入输出流对象都维护一个 流格式状态字 ,用它表示流对象当前的格式状态并控制流的格式。C++提供了使用 格式控制 函数与 操作子 函数来控制流的格式的方法。
1.4 C++根据文件内容的 数据格式 可分为两类: 文本文件 和 二进制文件 。前者存取的最小信息单位为 字节 ,后者 记录 。
1.5文件输入是指从文件向 内存 读入数据;文件输出则指从 内存 向文件输出数据。文件的输入输出首先要 打开文件 ;然后 进行读写 ;最后 关闭文件 。
1.6文本文件是存储ASCII码字符的文件,文本文件的输入可用 cin 从输入文件流中提取字符实现。文本文件的输出可用 cout 将字符插入到输出文件流来实现。程序在处理文本文件时 需要 (需要/不需要)对数据进行转换。
1.7二进制文件是指直接将计算机内的数据不经转换直接保存在文件中。二进制文件的输入输出分别采用read()、write() 成员函数。 这两个成员函数的参数都是 2个,分别表示 读写缓冲区 和 字节数 。
1.8设定、返回文件读指针位置的函数分别为 seekg , tellg ;设定、返回文件写指针位置的函数分别为 seekp , tellp 。
2 简答题
2.1 为什么cin输入时,空格和回车无法读入?这时可改用哪些流成员函数?
2.2 文件的使用有它的固定格式,试做简单介绍。
2.3 在ios类中定义的文件打开方式中,公有枚举类型open_mode的各成员代表什么文件打开方式?
2.4 简述文本文件和二进制文件在存储格式、读写方式等方面的不同,各自的优点和缺点。
2.5 文本文件可以按行也可以按字符进行复制,在使用中为保证能完整复制要注意哪些问题?
2.6 文件的随机访问为什么总是用二进制文件,而不用文本文件?
2.7 怎样使用istream和ostream的成员函数来实现随机访问文件?
3.选择题
3.1要进行文件的输出,除了包含头文件iostream外,还要包含头文件(C )。
A.ifstream B.fstream C.ostream D.cstdio
3.2执行以下程序:
char *str;
cinstr;
coutstr;
若输入abcd 1234↙则输出(D)。
A.abcd B.abcd 1234 C.1234 D.输出乱码或出错
3.3执行下列程序:
char a[200];
cin.getline(a,200,’ ‘);
couta;
若输入abcd 1234↙则输出(A)。
A.abcd B.abcd 1234 C.1234 D.输出乱码或出错
3.4定义char *p=”abcd”,能输出p的值(“abcd”的地址)的为(A /D ?)。
A.coutp; B.coutp;
C.cout(char*)p; D.coutconst_castvoid *(p);
3.5以下程序执行结果(A)。
cout.fill(‘#’);
cout.width(10);
coutsetiosflags(ios::left)123.456;
A.123.456### B.123.4560000 C.####123.456 D.123.456
3.6当使用ifstream定义一个文件流,并将一个打开文件的文件与之连接,文件默认的打开方式为(A)。
A.ios::in B.ios::out C.ios::trunc D.ios::binary
3.7从一个文件中读一个字节存于char c;正确的语句为(B)。
A.file.read(reinterpret_castconst char *(c), sizeof(c));
B.file.read(reinterpret_castchar *(c), sizeof(c));
C.file.read((const char *)(c), sizeof(c));
D.file.read((char *)c, sizeof(c);
3.8将一个字符char c=’A’写到文件中错误的语句为(D)。
A.file.write(reinterpret_castco
显示全部