新C++程序设计自考题库(含答案)_第1页
新C++程序设计自考题库(含答案)_第2页
新C++程序设计自考题库(含答案)_第3页
新C++程序设计自考题库(含答案)_第4页
新C++程序设计自考题库(含答案)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

新《C++程序设计》自考必备题库(含答案)

一、单选题

1、类A将每其它类对象作为成员,则建立A类对象时,下列描述正

确的是()

A、A类构造函数先执行

B、成员构造函数先执行

C、两者并行执行

D、不能确定

正确答案:B

2、列描述错误的是()

A、在创建对象前,静态成员不存在

B、静态成员是类的成员

C、静态成员不能是虚函数

D、静态成员函数不能直接访问非静态成员

正确答案:A

3、关多态性说法不正确的是()

A、C++语言的多态性分为编译时的多态性和运行时的多态性

B、编译时的多态性可通过函数重载实现

C、运行时的多态性可通过模板和虚函数实现

D、实现运行时多态性的机制称为动态多态性

正确答案:C

4、编译指令中,宏定义使用哪个指令()

A、ftinclude

B、#define

C、#if

D、ftelse

正确答案:B

5、于对象概念的描述中,说法错误的是()

A、对象就是C语言中的结构体

B、对象代表着正在创建的系统中的一个实体

C、对象是类的一个变量

D、对象之间的信息传递是通过消息进行的

正确答案:A

6、没有使用private关键字定义类的数据成员,则默认为()

A、private

B、public

C、protected

D、friend

正确答案:A

7、符型数据在内存中的二进制编码方式是()

A、补码

B、原码

C、ASCII码

D、反码

正确答案:C

8、++语言是从早期的C语言逐渐发展演变而来的与C语言相比,它

在求解问题方法上进行的最大改进是:O

A、面向过程

B、面向对象

C、安全性

D、复用性

正确答案:B

9、符串“ABC”在内存占用的字节数是()

A、3

B、4

C、6

D、8

正确答案:B

10、创建派生类对象时,构造函数的执行顺序是()

A、对象成员构造函数、基类构造函数、派生类本身的构造函数

B、派生类本身的构造函数、基类构造函数、对象成员构造函数

C、基类构造函数、派生类本身的构造函数、对象成员构造函数

D、基类构造函数、对象成员构造函数、派生类本身的构造函数

正确答案:D

11、中定义的成员默认访问属性为()

A、public

B、private

C、protected

D、friend

正确答案:B

12、求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,

选用()

A、内联函数

B、重载函数

C、内部函数

D、函数模板

正确答案:A

13、面正确的字符常量是()

A、“c”

B、3'

C、,W,

D、''

正确答案:C

14、有说明语句:charc='\72';则变量c()

A、包含1个字符

B、包含2个字符

C、包含3个字符

D、说明不合法,c值不确定

正确答案:A

15、inta=5,使b不为2的表达式是()

A、b=6一(---a)

B、b=a%2

C、b=a/2

D、b=a>3?2:1

正确答案:B

16、C++语言中用于注释的标识符是()

A、&

B、//

C、*

D、/

正确答案:B

17、数型数据在内存中的二进制编码方式是()

A、补码

B、原码

C、ASCII码

D、反码

正确答案:A

18、his指针存在的目的是()

A、保证基类公有成员在子类中可以被访问

B、保证每个对象拥有自己的数据成员,但共享处理这些数据成员的

代码

C、保证基类保护成员在子类中可以被访问

D、保证基类私有成员在子类中可以被访问

正确答案:B

19、哪种派生方式中,派生类可以访问基类中的protected成员()

A、public和private

B、public和protected

C、protected和private

D、仅protected

正确答案:B

20、行*=(6*7%8+9)/5;后,x的值为()

A、1

B、2

C、3

D、4

正确答案:B

21、类中声明的变量,下列描述中正确的是()

A、属于全局变量

B、只属于该类

C、属于该类,某些情况下也可被该类不同实例所共享

D、任何情况下都可被该类所有实例共享

正确答案:c

22、列说明中constchar*ptr;其中ptr应该是:()

A、指向字符常量的指针

B、指向字符的常量指针

C、指向字符串常量的指针

D、指向字符串的常量指针

正确答案:C

23、变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f

值的数据类型是()

A、int

B、folat

C、double

D、不确定

正确答案:C

24、于类和对象不正确的说法是()

A、类是一种类型,它封装了数据和操作

B、对象是类的实例

C、一个类的对象只有一个

D、一个对象必属于某个类

正确答案:C

25、下与int*q[5];等价的定义语句是()

A、intq[5];

B、int*q

C、int(q[5])

D、int(*q)[5]

正确答案:D

26、izeof(float)是()

A、一个双精度型表达式

B、一个整型表达式

C、一种函数调用

D、一个不合法的表达式

正确答案:B

27、ntFunc(int,int);不可与下列哪个函数构成重载()

A、intFHnc(int,int,int);

B、doubleFunc(int,int);

C、doubleFunc(double,double);

D、doubleFunc(int,double);

正确答案:B

28、列哪个类型函数不适合声明为内联函数()

A、函数体语句较多

B、函数体语句较少

C、函数执行时间较短

D、函数执行时间过长

正确答案:A

29、列有关重载函数的说法中正确的是()

A、重载函数必须具有不同的返回值类型

B、重载函数参数个数必须相同

C、重载函数必须有不同的形参列表

D、重载函数名可以不同

正确答案:C

30、行语句x=(a=3,b=a---)后,x,a,b的值依次为()B=3A=2X=3

A、3,2,3

B、2,3,2

C、3,3,2

D、3,2,2

正确答案:A

31、有代数式3ae/bc,则不正确的c语言表达式是()

A、a/b/c*e*3

B、3*a*e/b/c

C、3*a*e/b*c

D、a*e/c/c*3

正确答案:C

32、用值传递方式将实参传给形参,下列说法正确的是()

A、形参是实参的备份

B、实参是形参的备份

C、形参和实参是同一对象

D、形参和实参无联系

正确答案:A

33、果没有为一个类定义任何构造函数的情况下,下列描述正确的是

0

A、编译器总是自动创建一个不带参数的构造函数

B、这个类没有构造函数

C、这个类不需要构造函数

D、该类不能通过编译

正确答案:A

34、有定义inta[10],*p=a;,则p+5表示()

A、元素a[5]的地址

B、元素a[5]的值

C、元素a[6]的地址

D、元素a[6]的值

正确答案:A

35、a=-3;执行(a>0)?a:-a;后,a的值为()

A、3

B、1

C、0

D、-3

正确答案:D

36、使用关键字new所开辟的动态存储空间,释放时必须使用()

A、fIree

B、create

C、delete

D、cfile

正确答案:C

37、存在函数intmax(int,int)返回两参数中较大值,若求22,59,

70三者中最大值,下列表达式不正确的是()

A、intm=max(22,max(59,70));

B、intm=max(max(22,59),70);

C、intm=max(22,59,70);

D、intm=max(59,max(22,70));

正确答案:C

38、于类模板的说法正确的是()

A、类模板的主要作用是生成抽象类

B、类模板实例化时,编译器将根据给出的模板实参生成一个类

C、在类模板中的数据成员具有同样类型

D、类模板中的成员函数没有返回值

正确答案:B

39、于友元描述正确的是()

A、友元是本类的成员函数

B、友元不是本类的成员函数

C、友元不是函数

D、友元不能访问本类私有成员

正确答案:B

40、PC机中,门在内存占用的字节数是()

A、1

B、2

C、3

D、4

正确答案:A

41、有语句inta=3;,则执行了语句a+=a-=a*a后,变量a的值是O

A、3

B、0

C、9

D、-12

正确答案:D

42、列正确的标识符是()

A、hot_do

B、a+b

C、test!

D、%y

正确答案:A

43、的私有成员可在何处访问()

A、通过子类的对象访问

B、本类及子类的成员函数中

C、通过该类对象访问

D、本类的成员函数中

正确答案:D

44、C语言中,合法的长整型常数是()

A、0L

B、4962710

C、0.054838743

D、2.1869el0

正确答案:A

45、C++语言和C语言的兼容性,描述正确的是()

A、C++兼容C

B、C++部分兼容C

C、C++不兼容

D、C兼容C++

正确答案:A

46、写C++程序一般需经过的几个步骤依次是()

A、编辑、调试、编译、连接

B、编译、调试、编辑、连接

C、编译、编辑、连接、运行

D、编辑、编译、连接、运行

正确答案:D

47、贝构造函数的参数是()

A、某个对象名

B、某个对象的成员名

C、某个对象的引用名

D、某个对象的指针名

正确答案:C

48、C++中使用流进行输入输出,其中用于屏幕输出的对象是()

A、cerr

B、cin

C、cout

D、cfile

正确答案:C

49、所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为()

A、7

B、8

C、9

D、2

正确答案:A

50、C语言中,要求运算数必须是整型的运算符是()

A、/

B、++

C、!=

D、%

正确答案:D

51、列关于类的权限的描述错误的是()

A、类本身的成员函数只能访问自身的私有成员

B、类的对象只能访问该类的公有成员

C、普通函数不能直接访问类的公有成员,必须通过对象访问

D、一个类可以将另一个类的对象作为成员

正确答案:A

52、x=8,执行语句y=x++,则y等于()

A、6

B、7

C、8

D、9

正确答案:C

53、intk=32767;执行k=k+l;后k值为()

A、32768

B、—32768

C、0

D、-1

正确答案:A

54、个类可包含析构函数的个数是()

A、0个

B、1个

C、至少一个

D、0个或多个

正确答案:B

55、于虚函数的描述中,()是正确的。

A、虚函数是一个static类型的成员函数

B、虚函数是一个非成员函数

C、基类中说明了虚函数后,派生类中与其对应的函数可不必说明为

虚函数

D、派生类的虚函数与基类的虚函数具有不同的参数个数和类型

正确答案:C

56、函数调用时,如某一默认参数要指明一个特定值,则有()

A、其之前所有参数都必须赋值

B、其之后所有参数都必须赋值

C、其前、后所有参数都必须赋值

D、其前、后所有参数都不必赋值

正确答案:A

57、列有关构造函数的描述中,正确的是()

A、构造函数可以带有返回值

B、构造函数的名字与类名完全相同

C、构造函数必须带有参数

D、构造函数必须定义,不能缺省

正确答案:B

58、述静态数据成员的特性中,()是错误的。

A、说明静态数据成员时前边要加修饰符static

B、静态数据成员要在类体外进行初始化

C、引用静态数据成员时,要在静态数据成员前加〈类名〉和作用域运

算符

D、静态数据成员不是所有对象所共用的

正确答案:D

二.填空题

1、++中ostream类的直接基类是()。

正确答案:ios

2、一个类中可以定义()构造函数,()析构函数。

正确答案:多个个

3、面向对象程序设计中,具有相同属性和服务的一组对象的集合称

为()。

正确答案:类

4、已经定义了整型指针ip后,为了动态得到一个包括10个整数的

数组并由ip所指向,应使用语句()。

正确答案:int*ip=newint[10];

5、自定义函数要求返回一个值,则应在该函数体中有一条O语句,

若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说

明符()。

正确答案:return|void

6、有定义:inta[3][4]={{l,2},{0},{4,6,8,10}};则初始化

后,后1][2]得到的初值是(),后2][2]得到的初值是()。

正确答案:0|8

7、的继承方式有O继承、()继承和O继承。

正确答案:public(或公有)1private(或私有)|protected(或保护)

8、算符口只能用()运算符来重载,不能用友元运算符来重载。

正确答案:成员

9、同对象可以调用相同名称的函数,但可导致完全不同的行为的现

象称为()

正确答案:多态性

10、++的I/O系统通过O的机制实现文件和控制台的输入输出操作。

正确答案:流

n、义虚函数所用的关键字是()。

正确答案:virtual

12、定一个一维数组的定义为chara[8];则该数组所含元素的个数为

O,所占存储空间的字节总数为()。

正确答案:8|32

13、是一个类,已有语句“A*p;p=newA[10]。要释放由p指向

的动态空间,正确的语句应该是()。

正确答案:delete*p

14、个对象都是所属类的一个()。

正确答案:实例

15、要把一个文件输出流对象myFile与文件"f:\myText.txt”相关联,

所用的C++语句是:()。

正确答案:myFile.open(:\myText.txt;

16、一个类中的数据成员的初始化,可以通过()来实现,也可以通

过()来实现。

正确答案:构造函数|成员函数

17、有定义:charc='010,;则变量c中包含的字符个数是()。

正确答案:1

18、语言中的标识符只能由三种字符组成,它们是()、O和()。

正确答案:字母I数字I下划线

19、义模板的关键字是O。

正确答案:template

20、C++中,利用向量类模板定义一个具有20个char的向量E,其

元素均被置为字符气',实现此操作的语句是()

正确答案:vector〈char>E(20,'t');

21、include<iostream.h>#include<string.h>voidmain(){char

*a[5]=;char*pl,^p2;pl=p2=a[0];for(inti=0;i<5;i++){if(strcmp

(a[i],pl)>0)pl=a[i];if

(strcmp(a[i],p2)<0)

P2=a[i];}cout<<pl«,5<<p2«endl;}程序运行的结果是:

正确答案:workercadre

22、希望用一个已有对象来构造另一个同类型的对象,可以使用()

来实现。

正确答案:拷贝构造函数

23、tring类的()方法返回查找到的字符串在主串的位置。

正确答案:find

24、x,y,z均为int型变量,请写出描述“x或y中有一个小于z”

的表达式()。

正确答案:(x<z)II(y<z)

25、语言提供的三种逻辑运算符是()、()、O。

正确答案:逻辑非(!)I逻辑与(&&)I逻辑或(H)

26、的继承是指子类继承基类的()和成员函数。

正确答案:数据成员

27、语言中printf命令在C++中改用()。

正确答案:cout

28include<iostream>usingnamespacestd;classSample{public:int

v;Sample(){};Sample(intn):v(n){}Sample(Sample&x){v=2+x.v;}}

;SampleprintDouble(SampleA){A>v=

A、

v*2;returnA;}intmain(void){SampleSpl(5);SampleSp2=Spl;cout<

<Sp

2、<<endl;SampleSp3=printDouble(Sp2);cout<<Sp

3、<Xendl;return。;}程序运行的结果是:。

正确答案:14

29、数重载时,编译系统会根据O或O来区分。

正确答案:形参的类型1形参的个数

30、保护派生中,基类权限为Private的成员在派生类中()。

正确答案:不可访问

31、语言中的实型变量分为两种类型,它们是O和()。

正确答案:float(实型)〔double(双精度实型)

32、面向对象程序设计中,对象由一组()和一组()构成。

正确答案:属性(数据)I服务(操作)

33、向对象的英文缩写是()。

正确答案:00

34、++支持两种多态性:()时的多态性和运行时的多态性。

正确答案:静态(编译)

35、ector类中用于返回向量中第1个对象的方法是()

正确答案:front()

36、列程序计算1000以内能被3整除的自然数之和,请完成程序。

#include<iostream.h>voidmain(){intx=l,sum;while

(1){if()break;if()sum+=x;x++;}Cout<<sum<

<endl;}

正确答案:sum=0x==1000x%3==0

37、贝构造函数通常使用()来初始化创建中的对象。

正确答案:已有对象或对象

38、C++中,虚函数帮助实现了类的()性。

正确答案:多态

39、有定义:doublex[3][5];则x数组中行下标的下限为(),列下

标的上限为()。

正确答案:0|4

40、态成员属于O,而不属于O,它被同一个类的所有对象共享。

正确答案:类I任何一个对象

41、建立一个新对象时,程序自动调用O。

正确答案:构造函数

42、数的递归调用是指函数直接或间接地调用()。

正确答案:自身

43、)类只能作为基类使用,而不能声明它的对象。

正确答案:抽象

44、指向对象的指针作为函数参数,形参是对象指针,实参是对象的

正确答案:地址值

45、y

温馨提示

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

评论

0/150

提交评论