2023年4月自考04737C++程序设计试题及答案含解析_第1页
2023年4月自考04737C++程序设计试题及答案含解析_第2页
2023年4月自考04737C++程序设计试题及答案含解析_第3页
2023年4月自考04737C++程序设计试题及答案含解析_第4页
2023年4月自考04737C++程序设计试题及答案含解析_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

++程序设计年月真题

04737C20234

1、【单选题】C++语言对C语言做了很多改进,相对于C语言最根本的变化是

引进了类和对象的概念

增加了一些新的运算符

A:

规定函数说明符必须用原型

B:

允许函数重载,并允许设置缺省参数

C:

答D:案:A

2、【单选题】如想使用命名空间myspace,正确的程序语句是

usingmyspace;

usingnamespace:

A:

namespacemyspace:

B:

usingnamespacemyspace;

C:

答D:案:D

3、【单选题】下列选项中,代码复用粒度最大的是

对象

A:

函数

B:

变量

C:

答D:案:A

4、【单选题】下列关于类的叙述,不正确的是

类中可以定义不是任何类的成员的函数

类的成员变量和成员函数不能定义在类外

A:

类中的成员按功能划分,包括成员变量和成员函数

B:

类中的成员按访问权限划分,包括公有成员、私有成员和保护成员

C:

答D:案:B

5、【单选题】析构函数被调用的时间点是

对象被创建时

对象被复制时

A:

对象被销毁时

B:

C:

对象被引用时

答D:案:C

6、【单选题】使用new创建的对象,对其生命周期描述正确的是

具有固定生存期

具有动态生存期

A:

无引用时由系统自动回收

B:

从定义处开始,到程序块结束处结束

C:

答D:案:B

7、【单选题】下列关于运算符重载的叙述,不正确的是

运算符重载不能创建新运算符

运算符重载不能重载为全局函数

A:

运算符重载不能改变运算符的原有语义

B:

运算符重载不能改变运算符操作数的个数

C:

答D:案:B

8、【单选题】使用浅拷贝可能带来的问题不包括

程序访问非法地址

变量类型转换错误

A:

重复释放同一块空间

B:

变量之间的多余关联

C:

答D:案:B

9、【单选题】下列关于空类的叙述,不正确的是

无成员变量

无成员函数

A:

可以作为基类

B:

不能派生子类

C:

答D:案:D

10、【单选题】不允许外界直接访问,但允许派生类的成员直接访问的是

基类的公有成员

基类的保护成员

A:

基类的私有成员

B:

派生类中定义的公有成员

C:

D:

答案:B

11、【单选题】在实现多态的正常代码中,去掉基类的virtual,会出现

无法通过编译

可以通过编译,但无法正常运行

A:

无影响,运行结果不变

B:

可以正常运行,但运行结果可能改变

C:

答D:案:D

12、【单选题】类B派生自类A,A不使用虚析构函数。执行语句A*p=newB();

deletep:结果为

只执行B的析构函数

只执行A的折构函数

A:

接连执行A和B的析构函数

B:

接连执行B和A的析构函数

C:

答D:案:B

13、【单选题】实现多态时,必须满足的条件是

创建基类对象

使用基类引用调用其声明的函数

A:

声明派生类指针或引用

B:

使用基类指针调用其声明的虚函数

C:

答D:案:D

14、【单选题】下列关于抽象类的描述中,不正确的是

抽象类中至少应该有一个纯虚函数

抽象类的派生类必定是具体类

A:

抽象类通常用作类族中最顶层的类

B:

抽象类可以定义对象指针和引用

C:

答D:案:B

15、【单选题】iostream是C++标准类库中的一个关键的“流类”,从该类派生的“流

类”为

ifstream

fsream

A:

ofstream

B:

C:

ostream

答D:案:B

16、【单选题】下列关于cin的叙述,不正确的是

cin是一个预定义类

cin可以从键盘输入数据

A:

cin可以从文件输入数据

B:

cin与标准输入设备相关联

C:

答D:案:A

17、【单选题】将1到100输出为“001、002、······、100”,需要使用流操纵符

setw和left

setfill和fixed

A:

setw和right

B:

setfill和showpos

C:

答D:案:C

18、【单选题】已有“ifstreaminput;”,能将input流对象的读指针移到距当前位置

后(文件尾方向)100个字节处的语句是

input.seekg(100,ios::beg)

input.seekg(-100,ios:cur)

A:

input.seekg(100,ios::cur)

B:

input.seekg(-100,ios::end)

C:

答D:案:C

19、【单选题】下列关于文件读写操作的叙述,正确的是

每个文件均有一个文件结束符

C++将文件看成随机排列的无结构的字节流

A:

使用文件流打开对象后,文件只能成为一个输入流

B:

文本文件中通常将一个记录放在一列中,用换行符分隔

C:

答D:案:A

20、【单选题】假设有函数模板声明如下,则选项中不正确的是template<typenameT>

Tadd(Ta,Tb,Tc){returna+b+c;)

add('a','b','c');

add(10,100,1000);

A:

B:

add("a","b","c”);

add(0.1,0.01,0.001);

C:

答D:案:C

21、【问答题】

答案:第1次7【2分,格式和数据各1分】第2次12【2分,格式和数据各1

分】第3次17【2分,格式和数据各1分】

22、【问答题】

答案:1constructor2constructorpd[0]=1,pd[1]=22destructor1destructor

【6分,对1个得2分,对2个得3分,以此类推】

23、【问答题】

答案:9,8,7【1分】0,0,0【1分】0,0,0【1分】4,3,2【1分】3,3,3

【1分】4,3,2【1分】【6分,答对1行数据得1分】

24、【问答题】

答案:Person::studyStudent::restStudent::studyStudent::rest【6分,对

1个得2分,对2个得3分,对3个得5分,全对得6分】

25、【问答题】

答案:234【1分】*****234ok【1分】1.23457【1分】****1.23【1分】

cout.put(c):【1分】c【1分】

26、【问答题】读入当前文件夹下文件dev1.cpp,为该文件的每行代码加上行号后存入

dev2.txt文件中。

答案:

参考程序如下:【5分,“头文件、打开文件、循环读入、流对象关闭”对1个得2

分,对2个得3分,以此类推】

27、【问答题】参考Point(点)类和主函数的信息,逐步完成派生类Circle(圆)的设

计,要求:(1)增加数据成员r(半径);(2)设计Circle类中构造、析构、输出、设置

数据成员和获取数据成员的函数;(3)设计计算圆面积的函数。

答案:

增加数据成员r(半径)【类名及权限2分,数据成员1分】Circle类中构造、析

构、输出、设置数据成员和获取数据成员函数【各1分】计算圆面积的函数。【2

分】

28、【填空题】内联函数的函数体是在______时被替换,一般函数的函数体是在调用时被转

去执行。

答案:编译

29、【填空题】在C++标识符的作用域中,最大的是______作用域。

答案:命名空间

30、【填空题】如果一个类没有任何构造函数,则由系统自动添加一个______。

答案:不带参数的构造函数或默认构造函数

31、【填空题】友元机制虽然破坏了类的封装性,但是有助于______。

答案:数据共享

32、【填空题】A::A(inta,int*b){this->x=a,this->y=b;)中,this的类

型是______。

答案:A

33、【填空题】将运算符>>重载为类CS的友元函数的格式是:friendistream&

operator>>______。

答案:(istream&…,CS&…),“...”可空白或填写任意合法指定名

34、【填空题】控制基类成员在派生类中的访问属性,一般都使用继承方式说明符

______。

答案:public

35、【填空题】派生类对象的初始化工作应该由基类和派生类的______共同实现。

答案:构造函数

36、【填空题】除继承关系之外,类和类之间还可以是______关系。

答案:组合或包含或hasa

37、【填空题】在面向对象设计思想中,多态可以理解为“一种接口,______”。

答案:多种实现或多种方法

38、【填空题】包含纯虚函数的类被称为抽象类,它不能______。

答案:实例化一个对象

39、【填空题】流类中提供的getline()函数可以从输入流中读取一行数据,行结束符是

______。

答案:\n或'\n'

40、【填空题】在非标准文件操作中,应该先定义流对象,再打开文件,必须使用______函

数。

答案:open()

41、【填空题】函数模板实例化过程由编译器完成,生成______。

答案:模板函数

42、【填空题】如果类模板的成员函数定义在类体中,则其自动成为______。

答案:内联函数

43、【填空题】数据文件a.txt中保存了空格分隔的8个整数,计算它们的最大值。

答案:(1)freopen("a.txt","r",stdin)【2分】(2)cin>>a[i]【2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论