奥鹏福建师范大学2013年秋《C++语言程序设计》在线作业

所属学校:福建师范大学 科目:C++语言程序设计 2015-03-17 11:41:44

一、单选题(共 30 道试题,共 60 分。)  

1.  析构函数在什么时间开始调用。( D)

A. 类创建  B. 创建对象  C. 引用对象     D. 释放对象

2.  以下哪个不是循环语句( D)

A. while语句        B. do-while语句

C. for语句          D. if-else语句

3.  能正确表示x=3或者x<1的关系表达式是( C)

A. x=3 or x<1   B. x=3|x<1    C. x=3||x<1   D. x =3&&x<1

4.  如果变量x,y已经正确定义,下列语句哪一项不能正确将x,y的值进行交换(D )

A. x=x+y,y=x-y,x=x-y     B. t=x,x=y,y=t

C. t=y,y=x,x=t         D. x=t,t=y,y=x

5.  一个类的友元函数或友元类能够通过成员操作符访问该类的(D )

A. 私有成员          B. 保护成员    C. 公有成员        D. 所有成员

6.  以下各选项企图说明一种新的类型名,其中正确的是(C )

A. typedef v1 int;      B. typedef v2=int;

C. typedef int v3;      D. typedef v4: int;

7.  如要求在if后一对括号中的表达式,表示a不等于0的时候的值为"真",则能正确表示这一关系的表达式为(D )

A. a<0    B. !a     C. a=0      D. a

8.  派生类公有继承基类时,基类中的所有公有成员成为派生类的______。( A)

A. public 成员        B. 友员    C. protected成员     D. private成员

9.  函数重载体现了面向对象的( B)

A. 封装性   B. 多态性   C. 继承性    D. 抽象性

10.  已知下列语句中的x和y都是int型变量,其中不正确的语句是(D )

A. y+=++x;      B. ++x+=y;  C. y=x++;     D. x++=y;

11.  下列函数中,可以为虚函数的是(D )

A. 自定义的构造函数   B. 拷贝构造函数   C. 静态成员函数   D. 析构函数

12.  静态成员函数仅能访问( A)

A. 静态的数据成员   B. 非静态的成员函数C. 非静态的数据成员

D. 以上都不对

13.  在下边的二维数组定义中,正确的是( C)

A. int a[5][]

B. int a[][5]

C. int a[][3]={{1,3,5},2}

D. int a[](10)

14.  设B类是由A类继承的。当创建一个B类的对象时,构造函数的调用顺序是(A )

A. 先调用A类的构造函数,然后调用B类的构造函数

B. 先调用B类的构造函数,然后调用A类的构造函数

C. 不调用A类的构造函数

D. 视定义时A类和B类出现的位置

15.  以下函数的返回结果是(A )int function(char *x) { char *p=x; while(*p++);

return(p-x-1); }

A. 求字符串的长度      B. 将字符串x连接到字符串p后面

C. 将字符串x复制到字符串p中       D. 将字符串x反向存放

16.  关于异常和C++提供的异常处理机制。不正确的说法是( A)

A. 若程序员预见到程序的异常,则一定可以通过修改程序代码来避免异常出现

B. 使用dyname cast操作符可能会发生异常

C. 异常可以用catch捕获处理

D. 异常可以是对象,也可以是普通函数

17.  以下哪个不是循环语句(D )

A. while语句   B. do-while语句   C. for语句    D. if-else语句

18.  能做为C++程序基本单位的是(C )

A. 字符;   B. 语句;   C. 函数;    D. 源文件;

19.  如果有char* ssl=“ 0123456789”,则,sizeof(ssl)的值是(A )

A. 4    B. 10    C. 11    D. 40

20.  已知字符'b'的ASCII码为98,语句printf("%d,%c",'b','b'+1 );的输出为( D)

A. 98,b    B. 语句不合法    C. 98,99    D. 98,c

21.  下列对基类和派生类关系的描述中,错误的是(B )

A. 派生类是基类的具体化       B. 派生类是基类的子集

C. 派生类是基类定义的延续      D. 派生类是基类的组合

22.  C++程序源文件默认的扩展名是( C)

A. cs      B. obj   C. cpp   D. exe

23.  下面不是面向对象程序设计的特征的是(D )

A. 封装   B. 继承    C. 多态    D. 结构

24.  在下列运算符中,优先级最低的是(A )

A. ||    B. !=    C. <    D. +

25.  在一个源文件中定义的全局变量的作用域为( C)

A. 本程序的全部范围       B. 本函数的全部范围

C. 从定义该变量的位置开始到本文件结束

D. 以上说法都不正确

26.  若用数组名作为函数调用时的实参,则实际上传递给形参的是( A)

A. 数组首地址

B. 数组的第一个元素值

C. 数组中全部元素的值

D. 数组元素的个数

27.  当说明一个结构变量时,系统分配给它的内存是(A )

A. 各成员所需内存量的总和

B. 结构中第一个成员所需内存量

C. 成员中占内存量最大的成员所需的容量

D. 结构中最后一个成员所需内存量

28.  下列do-while循环的循环次数是( D): 已知:int i=5  do{ cout<<i--<<endl   i--  }while

(i!=0)

A. 0     B. 2     C. 5        D. 无限次

29.  下面的函数声明中, 哪一个是” void BC(int a, int b);”的重载函数? (B )

A. int BC(int a, int b)

B. void BC(int a, char b)

C. float BC(int a, int b, int c = 0)

D. void BC(int a, int b=0)

 

30.  如果a=1,b=2,c=3,d=4,则条件表达式“ab?a:c<d?c:d ” 的值为( B  )

A. 2   B. 3    C. 1    D. 4

二、判断题(共 20 道试题,共 40 分。)

1.  C++中,一个函数必须在函数声明后才能使用(√)

2.  带extern的变量说明是变量声明,也是变量定义。( )

3.  假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是8。(√)

4.  typedef定义一个新的数据类型,在建立一个tepedef类型时同时分配内存空间( )

5.  函数的返回值也称函数值,返回的不是函数本身,而是一个值。(√  )

6.  C++语言程序中,main()函数必须放在程序开始的部分( )

7.  switch后面括号中的表达式只能是整型、字符型或枚举型表达式。(√)

8.  C++语言程序必须要有return语句( )

9.  C++语言中,标识符不区分大小写。( )

10.  静态就是让变量和函数在生命的区域内成为私有。(√)

11.  一个类的成员函数可以任意被调用( )

12.  NULL与void *是不同的概念,NULL是一个指针值,任何类型的指针都可赋予该值。而void *是一种类型,是一种无任何类型的指针。(√)

13.  常对象必须进行初始化,而且不能被更新(√)

14.  C++语言程序中,要调用的函数必须在main()函数中定义( )

15.  C++中函数声明就是函数原型。(√  )

16.  C++程序的开发步骤通常要经过编辑、编译、连接、运行调试这样几个步骤。(√)

17.  定义全局变量要在程序开始时进行,并且放在所有函数的外面,静态局部变量要在函数内部定义,但生命期却随函数的第一次被调用而产生。(√  )

18.  空类型指针不能进行指针运算,也不能进行间接引用。(√  )

19.  通过使用不同的类型参数,函数模板可以生成不同类型的函数(√  )

20.  字符型数据在内存中的存储形式是ASCII码(√  )

版权声明

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系本站我们将配合处理!

分享: