[计算机类试卷]国家二级C++机试(C++流)模拟试卷7及答案与解析.doc

上传人:ideacase155 文档编号:497130 上传时间:2018-11-30 格式:DOC 页数:13 大小:44KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(C++流)模拟试卷7及答案与解析.doc_第1页
第1页 / 共13页
[计算机类试卷]国家二级C++机试(C++流)模拟试卷7及答案与解析.doc_第2页
第2页 / 共13页
[计算机类试卷]国家二级C++机试(C++流)模拟试卷7及答案与解析.doc_第3页
第3页 / 共13页
[计算机类试卷]国家二级C++机试(C++流)模拟试卷7及答案与解析.doc_第4页
第4页 / 共13页
[计算机类试卷]国家二级C++机试(C++流)模拟试卷7及答案与解析.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、国家二级 C+机试( C+流)模拟试卷 7及答案与解析 一、选择题 1 下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的 “ left”,输出效果将发生变化的是 ( )。 ( A) cout left setfill(*) 357; ( B) cout left setw(5) 357; ( C) cout left setw(5) “ABCDE“; ( D) cout left “ABCDE“; 2 假定下列语句都是程序运行后首次执行的输出语句,其中输出结果与另外三 条语句不同的语句是 ( )。 ( A) cout setfill(*) 123 setw(9) 321; ( B)

2、cout setfill(*) setw(6) left 123 setw(6) right 321; ( C) cout 123 setfill(*) setw(6) 321; ( D) cout setfill(*) setw(9) left 123 321; 3 有如下程序: # inc1ude iostream #inc1ude iomanip using namespace std; int main() int s=123, 234; cout right setfill(*) setw(6); for(int l=0; 1 2; 1+) cout si end1; return

3、0: 运行时的输出结果是 ( )。 ( A) 123 234 ( B) *123 234 ( C) *123 *234 ( D) *123 234* 4 下列控制格式输入输出的操作符中,能够设置浮点数精度的是 ( )。 ( A) setprecision ( B) setw ( C) setfill ( D) showpoint 5 有如下程序: #inc1ude iostream #inc1ude iomanip using namespace std; int main() cout setw(10) setfill(x) setprecision(8) left; cout 12 345

4、6793 _ 98765; return 0; 若程序的输出是 12 345679x98765xxxxx,则划线处缺失的部分是 ( )。 ( A) setw(10) ( B) setfill(x) ( C) setprecision(8) ( D) right 6 下列语句都是程序运行时的第 1条输出语句,其中一条语句的输出效果与其他三条语句不同,该语句是 ( )。 ( A) cout internal 12345; ( B) cout left 12345; ( C) cout right 12345; ( D) cout setw(6) 12345; 7 有如下程序: #inc1ude i

5、omanip #inc1ude iostream using namespace std; int main() cout setfill(*) setw(6) 123 456; return 0; 运行时的输出结果是 ( )。 ( A) *123*456 ( B) *123456* ( C) *123456 ( D) 123456 8 下列控制对齐方式的操作符中,错误的是 ( )。 ( A) intemal ( B) center ( C) left ( D) right 9 有如下程序: #inc1ude iostream #inc1ude iomanip using namespace

6、std; int main() cout setfill(#) setw(4) “OKf 123 end1; return (); 运行这个程序的输出结果是 ( )。 ( A) #OK123 ( B) #OK#123 ( C) OK#123 ( D) OK#123# 10 若磁盘上已存在某个文本文件,其全路径文件名为 d:ncretest txt,下列语句中不能打开该文件的是 ( )。 ( A) ifstream file(“d:ncretest txt“); ( B) ifstream file(“d:ncretest txt“); ( C) ifstream file; file open

7、(“d:ncretest txt“); ifstream(“d:ncretest txt“); ( D) ifstream* pFile=new 11 语句 ofstreamf(“SALARYDAT“, ios base:app);的功能是建立流对象 f,并试图打开文件 SALARYDAT与 f关联,而且 ( )。 ( A)若文件存在,将其置为空文件;若文件不存在,打开失败 ( B)若文件 存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件 ( C)若文件存在,将文件指针定位于文件首;若文件不存在,打开失败 ( D)若文件存在,打开失败;若文件不存在,建立一个新文件 12 如下函数的作

8、用是以双倍行距输出文件: void double_space(ifstream ( C) ifstream fin; fin open(“file dat“); ( D) ifstream *fin=new ifstream(); fin open(“file dat“); 16 当使用 ifstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为 ( )。 ( A) ios_base:in ( B) ios_base:in lios_base:out ( C) ios_base:out ( D) ios_base:in fin open(“d:test txt“,ios_ba

9、se:in); ( B) fstream fio; fio open(“d:test txt“,ios_base:out); ( C) ofstream fout; fout open(“d:test txt“,ios_base:out); ( D) ofstream fout; fout open(“d:test txt“,ios_base:app); 21 如需要向一个二进制文件尾部添加数据,则该文件的打开方式为 ( )。 ( A) ios_base:app ( B) ios_base:binary|ios_base:out ( C) ios_base:out ( D) ios_base:

10、binary|ios_base:app 22 有如下语句序列: ifstream infile(“DATA DAT“); if(infile good()cout “A“; else COUt “B“; ofstream outfile(“DATA DAT“); if(outfile fail()cout “C“;else cout “D“; 若执行这个语句序列显示的是 BD,则说明文件 DATA DAT( )。 ( A)以读方式打开成功 ( B)以读方式打开失败,但以写方式打开成功 ( C)以读方式打开失败,以写方式打开也失败 ( D)以读方式打开成功,以写方式打开也成功 国家二级 C+机试

11、( C+流)模拟试卷 7答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 此题考查的是 C+流。 ssetfill()作用是设置填充字符; left是使输出数据在指定宽度内左对齐: setw()的作用是设置输入输出宽度,且只对 当前一次有效。 【知识模块】 C+流 2 【正确答案】 B 【试题解析】 按照选项 B的输出格式控制符输出的结果为 “l23*32l”,而按照选项 A)、 C)、 D)的输出格式控制符输出的结果为 “123*321”。 【知识模块】 C+流 3 【正确答案】 B 【试题解析】 在输出语句中定义了输出的格式是字符宽度为 6,并且向右对齐,不足的位用 补齐。在 C

12、+中,输出格式的设置只对第一次输出有效,在完成了一个数据的输出后,宽度殴置自动恢复为 0(表示按数据实际宽度输出 )。所以对于本题来说,在循环语句中输出数组 s0中的元素时,按照规定的格式输出,其结果为 123,当输出 s1时,输出格式已经恢复到按数据实际宽度输出,所以此时输出为 234。 【知识模块】 C+流 4 【正确答案】 A 【试题解析】 setprecision(int n):设置浮点数的精度 (有效位数或小数位数 ),等价函数调用: io precision(n)。 【知识模块】 C+流 5 【正确答案】 A 【试题解析】 根据程序输出的结果最后 5个位置用 x进行填充,又因为 s

13、etw(10)设置输出的宽度效果只对一次输出有效。所以划线处应该填写 setw(10)。 【知识模块】 C+流 6 【正确答案】 D 【试题解析】 选项 A), B), C)都没有指输出数据的宽度,所以在输出时,按实际字符的宽度输出,而选项 D)指定输出字符的宽度为 6,而实际输出的宽度等于5,所以最后一个字符用空格补齐。 【知识模块】 C+流 7 【正确答案】 C 【试题解析】 在主函数中第一次输出时调用函数 setfill(*)设置填充字符为 *,调用函数 setw(6)设置 每次输出的宽度为 6,所以第一次输出 123时,多余的三个空位用 *填充,即结果为 *123,第二次从输出流中输出

14、 456。 【知识模块】 C+流 8 【正确答案】 B 【试题解析】 对齐方式的控制操作符 left的含义是在设定的宽度内左对齐输出,右端填已设定的填充字符; right(此为默认设置 )在设定的宽度内右对齐输出;intemal在设定的宽度内右对齐输出,但若有符号 (一或 +),符号置于最左端。 【知识模块】 C+流 9 【正确答案】 A 【试题解析】 setfill是设 置填充字符, setw设置输出的宽度,它们的作用表现在紧接着输出的字符串上。这个宽度是填充后的宽度。所以 cout setfill(#)seM(4) “OK“ 123中, setfill和 setw只作用在 “OK“,表示在

15、 “OK“前面填充 2个 #。 【知识模块】 C+流 10 【正确答案】 A 【试题解析】 此题考查的是转义字符。在字符常量或字符串中,以 “ ”开头的一系列字符被看做是一个转义字符。要表示 “ ”字符,必须使用转义字符 “ ”。 【知识模块】 C+流 11 【 正确答案】 B 【试题解析】 此题考查的是文件打开模式。文件打开模式 iso_base:app是为添加数据而打开 (总是在尾部写 ),故只有选项 B说法正确。 【知识模块】 C+流 12 【正确答案】 A 【试题解析】 此题考查的是文件流。 get0函数作用是读入一个字符,所以调用它的应该是输入文件流 ifstream对象 f pLi

16、t0函数作用是输出一个字符,所以调用它的应该是输入文件流 ofstream对象 t,故选项 B、 C排除;读入和输出应该是有顺序的,应该先读入后输出,所以前一空填 f get(c),后一空填 t put(c)。 【知识模块】 C+流 13 【正确答案】 B 【试题解析】 要使用文件流对象进行针对磁盘文件的 I/O操作,必须包含fstrem头文件。 【知识模块】 C+流 14 【正确答案】 D 【试题解析】 对于 ofstream,默认的打开方式是 ios base:out, ofstream只能用于输出,它没有提供任何用于输入的操作。 【知识模块】 C+流 15 【正确答案】 A 【试题解析】

17、 在选项 A中,在赋值号的左侧表示建立一 个输入流对象 fin,而在赋值号的右侧的表达式不正确,因为文件输入流类 ifstream不能直接调用其成员函数 open。 【知识模块】 C+流 16 【正确答案】 A 【试题解析】 对于 ifstream,默认打开模式是 ios base:: in。 ifstream只能用于输入,它没有提供任何用于输出的操作。 【知识模块】 C+流 17 【正确答案】 A 【试题解析】 C+流的定位方式 (也就是指针移动方式 )有三种,被定义为ios_base:seek_dir中的一组枚举符号: ios_base:beg相当于文件首: ios base:cur相当于

18、当前位置 (负数表示当前位置之前 )。 ios base:end相对于文件尾。 【知识模块】 C+流 18 【正确答案】 D 【试题解析】 模式 is_base:binary作为 制进文件打开, io_base:out为输出而打开文件。 【知识模块】 C+流 19 【正确答案】 D 【试题解析】 对于输入文件流类 ifstream,默认的打开模式是 ios base:in,当以这种方式打开文件而文件又不存 在时,通过 fail()可测试打开失败 (返回值为true),对于输出文件流类 ofstream,默认的打开模式是 ios_base:out,当以这种方式打开文件而文件又不存在时,将自动建立新文件。 【知识模块】 C+流 20 【正确答案】 A 【试题解析】 如果以 iso base:in模式打开文件但文件又不存在时,可以通过failo测出文件打开失败,不会自动创建文件。 【知识模块】 C+流 21 【正确答案】 D 【试题解析】 ios base:binary模式是作为二进 制文件打开, ios_base:app模式是作为添加数据而打开 (总是在尾部写 )。 【知识模块】 C+流 22 【正确答案】 B 【试题解析】 由这个语句序列显示的结果是 BD,说明执行了 cout “B“和cout “D“语句。 【知识模块】 C+流

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1