首页 > 全部 > 二级C++ > 国家二级C++机试(运算符重载、模板和C++流)模拟试卷8

国家二级C++机试(运算符重载、模板和C++流)模拟试卷8

本单篇文档共9984字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 章节练习 4960人下载
价格: 1.10 原价:¥9.00
收藏

国家二级C++机试(运算符重载、模板和C++流)模拟试卷8

选择题

1.有如下程序:

#include<iostrearn>

using namespace std;

int main()

{

cout.fill(’*’);

cout.width(6);

cout.fill(’#’);

cout<<123<<endl;

return 0;

}

执行后的输出结果是( )。(A)

A. ###123

B. 123###

C. ***123

D. 123***

解析:此题考查的是I/O格式化输出。函数width(int n)设置输入输出宽度,当实际数据宽度小于制定的宽度时,多余的位置用填充字符填满;当实际数据宽度大于设置的宽度时,仍按实际宽度输出;函数fill(char c)用来设置填充字符。

2.下面关于C++流的叙述中,正确的是( )。(A)

A. cin是一个输入流对象

B. 可以用ifstream定义一个输出流对象

C. 执行语句序列char*y=\\

D. 执行语句序列char x[80];cin.getline(x,80);时,若键入

Happy new year

则x中的字符串是\\

解析:此题考查的是C++流的概念和I/O的格式化。cin是类的对象,亦即输入流对象;ifstream是输入文件流类,不能定义一个输出流对象:C选项中最后输出的是字符串“PQMN”:D选项中x中字符串应该是“Happy new year”。

3.有如下程序:

#include<iostream>

#include<iomanip>

using namespace std;

int main()

{

cout.fill(’*’);

cout<<left<<setw(4)<<123<<<’’OK’’<<endl;

return 0;

}

执行这个程序的输出结果是( )。(A)

A. 123*OK

B. 123*OK**

C. *123OK

D. *123**OK

解析:此题考查了输出流的格式控制。cout的fill()是设置填充字符:left和endl分别是使输出数据左对齐和换行;setw()函数的作用是设置输入输出的宽度,此设置效果只对以此输入或输出有效。此题中,输出整数123时宽度为4且左对齐,得到“123*”;输出字符串“OK”时宽度没有定义实际大小输出,结果得到OK:故最后得到的输出结果是123*K。

4.下列关于输入流类成员函数getline()的描述中,错误的是( )。(A)

A. 该函数是用来读取键盘输入的字符串的

B. 该函数读取的字符串长度是受限制的

C. 该函数读取字符串时,遇到终止符便停止

D. 该函数读取字符串时,可以包含空格

解析:此题考查的是getline()函数。getline()函数的原型为:istream_type&getline(char_type*s,strearnsize,char_typedelim);。其功能是从当前输入位置开始提取字符存入s所指向的具有n个字节的字符空间中。遇到以下情况时停止:已提取并存储了n-1个字符;到流尾,无字符可取:下一个要提取的字符等于结束标志字符delim。故选项B、C、D都是正确的。getline()函数不仅可以用来读取键盘输入的字符串,还可以用来读取文件等数据流,故选项A错误。

5.有如下程序

#include<iostream>

#include<iomanip>

using namespace std;

int main(){

cout<<setprecision(3)<<fixed<<setfill(’*’)<<setw(8);

cout<<12.345<<_______<<34.567;

return 0:

}

若程序的输出是:

**12.345**34.567

则程序中下划线处遗漏的操作符是( )。(D)

A. setprecision(3)

B. fixed

C. setfill(’*’)

D. setw(8)

解析:此题考查的是输出函数的格式控制。此题中,操作符setprecision的作用是设置浮点数的精度;fixed的作用是让浮点数按定点格式输出;setfill的作用是设置填充字符;setw的作用是设置输入输出的宽度,一次有效的设置。下划线处应填一个让34.567的输出宽度为8的操作符,即setw(8)。

6.使用输入输出操作符setw,可以控制( )。(B)

A. 输出精度

B. 输出宽度

C. 对齐方式

D. 填充字符

解析:此题考查的是C++流的操作符。在C++流中,操作符setw的作用是设置输入输出宽度。

7.已知一程序运行后执行的第一个输出操作是( )。

cout<<setw(10)<<setfill(’*’)<<1234;

则此操作的输出结果是(B)

A. 1234

B. ******1234

C. **********1234

D. 1234******

解析:此题考查的是输入输出的格式控制。setw()控制的是输入输出的宽度;setfill()控制的是输出的填充字符。所以本题的输出结果是*****1234。

8.有如下4个语句:

①cout<<’A’<<setfill(’*’)<<left<<setw(7)<<’B’<<endl;

②cout<<setfill(’*’)<<left<<setw(7)<<’A’<<’B’<<endl;

③cout<<’A’<<serfill(’*’)<<right<<setw(7)<<’B’<<endl;

④cout<<setfill(’*’)<<right<<setw(7)<<’A’<<’B’<<endl;

其中能显示A******B的是( )。(C)

A. ①和③

B. ①和④

C. ②和③

D. ②和④

解析:此题考查C++流的使用。setfill()作用是设置填充字符;left是使输出数据在指定宽度内左对齐:fight是使输出数据在指定宽度内右对齐。

9.下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的’’<<left\\(B)

A. cout<<leR<<setfill(’*’)<<357;

B. cout<<left<<setw(5)<<357;

C. cout<<left<<setw(5)<<’’ABCDE’’;

D. cout<<left<<’’ABCDE’’;

解析:此题考查的是C++流。setfill()作用是设置填充字符;

本文档预览:3600字符,共9984字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C++机试(运算符重载、模板和C++流)模拟试卷8

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号