20年春福师《C++语言程序设计》在线作业二(答案参考)
【奥鹏】-[福建师范大学]福师《C++语言程序设计》在线作业二
试卷总分:100 得分:100
第1题,对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是_________。
A、公有类型* X4 h0 l, {: v0 Q, E" x
B、私有类型
C、保护类型
D、友元类型+ }# f7 Q: J2 X0 {9 t
正确答案:* u6 e: X' @- A6 o]7 ^
{& z+ f7 j$ _- T
第2题,下列哪项不是面向对象程序设计的主要特征( )
A、封装
B、继承
C、多态
D、结构
正确答案:6 R; C! Em0 b
2 D7 c, U( D8 f% E{; B4 E
- B) f8 ?2 t. D+ z2 _, m
第3题,下列字符中不能构成标识符的是( )& C5 f5 tI# o7 e1 f: _
A、数字字符
B、大写字母9 d% wm, J9 N! U
C、下划线字符
D、连接符7 Q2 @7 g. f3 a( g3 o2 B2 D: T/ _
正确答案:
8 H* {9 x# v1 e8 h7 [
第4题,对于全局函数 int f(void) ,与其完全等价的函数原型为____________。* `, {! t7 ?" k0 C" N
A、int& f( );( f, [8 V' F2 \6 |: Y
B、int f(void ) const;+ L( F$ e. y& R* Y2 B* h
C、const int f( );2 E" H# z$ f+ d$ sK% \' p
D、A、B、C都不是: F* f7 \, ]0 }
正确答案:" q" {' |6 E% w" ?{, @* l
% M( v% v) U& Z& K1 `
第5题,设int x;,则经过( )后,语句*px=0;可将x值置为0。3 ~1 {8 @% C6 A+ p7 h: \- C4 }
A、int * px;) n+ v7 Af7 }7 l& aK
B、int const * px=&x;3 k- n5 d2 r/ l4 \
C、int * const px=&x;- L2 e: ^7 V" O' O
D、const int * px=&x;7 c3 C! C5 c1 D: d0 W/ ?6 s% C0 m
正确答案:
第6题,不能作为函数重载判断依据的是()。! Q2 g2 m0 X' O) t3 }2 F
A、const7 i9 k, H# y* u% }8 z- n4 xs
B、返回类型, Z: a) q8 U- H5 D
C、参数个数: O+ ]# q. k% @4 B
D、参数类型; u8 w! {" ~# P. f" q
正确答案:+ a1 L# g7 ~9 C# {
- D* S% |7 ^7 ~* r
第7题,在下列运算符中,优先级最低的是( )
A、||
B、!=
C、
D、+
正确答案:1 Y4 v3 p( p( Q1 q" h" @
_) D' {7 R% R+ C6 f
第8题,下列关于多态性的描述,错误的是()。
A、C++语言的多态性分为编译时的多态性和运行时的多态性
B、编译时的多态性可通过函数重载实现
C、运行时的多态性可通过模板和虚函数实现( W5 X! K* k) h
D、实现运行时多态性的机制称为动态绑定: ?/ N! J+ n3 w% b
正确答案:2 p) d: G8 A9 |+ _9 j1 e& {
8 s. Q$ l~+ C4 m- t1 f
第9题,在C++语言中表示一条语句结束的标号是()。h. c7 |% q- {3 U
A、:
B、;
C、//
D、}
正确答案:
6 S- d( S' u$ Z7 j& Z
3 H+ s4 bk3 a$ f7 ?( G
第10题,一个类的友元函数能够访问该类的()。: D' ]{) G' V: n
A、私有成员$ T" T$ H4 {3 B7 }8 n2 [* F6 U
B、保护成员: M1 G- T( |# H- M9 H9 i; q
C、公有成员- T7 D4 `- }- N4 i4 C+ i
D、所有成员6 l% C; s: H" z3 t
正确答案:7 ]2 b) s' W/ w8 Z. }) x7 F
9 r) X) S( t# q+ t6 B; K
第11题,下列对基类和派生类关系的描述中,错误的是______。( )/ c: v- E$ G, ?
A、派生类是基类的具体化3 o. u# f0 ?' `3 ~1 \
B、派生类是基类的子集
C、派生类是基类定义的延续* x+ z3 k- i1 V4 f6 t' V- T6 K
D、派生类是基类的组合6 T- ~: r! ]" ^9 |2 Z* G( d
正确答案:
第12题,下列哪种函数可以是虚的________。
A、自定义的构造函数, h. e3 T# S: H# p5 A
B、拷贝构造函数; T8 [) q" ?9 \4 a
C、静态成员函数6 Z/ Q7 Y& Q, h: z1 Y8 ~+ Y- {
D、析构函数
正确答案:' C5 D* B0 @+ T# K! ]8 Z
第13题,下列程序的执行结果为_________。#include void main() { int a=3,b=0; int*p=&a: b=+a++; cout*P","bendl;}! k4 O+ j! O+ S5 \
A、3,4
B、4,3
C、3,4; k$ O! \/ K" m/ ^8 Z
D、4,48 U3 m5 A2 P. b
正确答案:
第14题,如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是()。3 _& I, w- Q" D5 j! y+ y
A、一元运算符
B、二元运算符
C、重载错误
D、都可能
正确答案:
# C) m* H8 C! A- _& q1 |5 X/ v* V
0 C1 Z0 }9 U. X7 U- t( k, K
第15题,关于异常和C++提供的异常处理机制。不正确的说法是( )
A、若程序员预见到程序的异常,则一定可以通过修改程序代码来避免异常出现
B、使用dyname cast操作符可能会发生异常
C、异常可以用catch捕获处理, e1 v2 |/ d: y. h, |3 U; L
D、异常可以是对象,也可以是普通函数
正确答案:
第16题,设有数组定义:chararray[]="China";,则数组array所占的空间为()。
A、4个字节
B、5个字节* c' m6 ~; y% j
C、6个字节
D、7个字节
正确答案:
: ~: x9 o3 m6 {* P5 F/ I
2 c, U6 S5 q$ S" y9 Ug
第17题,在用class定义一个类时,数据成员和成员函数的默认访问权限是()。
A、共有4 D8 v, A$ j9 H+ i, ~4 h' \
B、私有& E1 \$ F4 j& q' a- a
C、保护
D、其他
正确答案:
第18题,在下列关键字中,用以说明类中公有成员的是()。
A、public
B、private& m" y( ^* Bb( ~% _& t
C、protected0 R( a. T2 R( z* p0 g5 s) t
D、friend" l! [9 J; |* P+ v! UG, E
正确答案:: P: D& E1 P7 ]0 X6 l- ?+ P
$ j, p0 ^, a: |8 |$ H: }7 A
第19题,当说明一个结构变量时,系统分配给它的内存是( )
A、各成员所需内存量的总和5 d% X) t8 Jy3 u
B、结构中第一个成员所需内存量, }5 s\" i) ?2 K# B" P& P: ?- }6 }
C、成员中占内存量最大的成员所需的容量0 x& B5 o3 h# V, i. c7 D
D、结构中最后一个成员所需内存量
正确答案:4 O" q- e6 }& j9 d2 {3 U3 _
第20题,下面关于数组的描述错误的是()。2 x7 ]/ C! W1 o4 f0 Q2 H
A、在C++语言中数组的名字就是指向该数组第一个元素的指针# [8 D: H5 n- k' W! w& s
B、长度为n的数组,下标的范围是0-n-15 Z7 d% H: h2 `2 ?
C、数组的大小必须在编译时确定
D、数组只能通过值参数和引用参数两种方式传递给函数7 l0 c, Z0 v4 ]4 ~; o* i% J
正确答案:
第21题,在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元。( )% O4 \% s; J5 v* A( u) q: |$ Q
A、错误$ o7 |+ G- E" W6 Q# sL
B、正确
正确答案:
. M7 h# G& @* p& X( w" p
第22题,在一个函数内的复合语句中定义的变量在本函数范围内有效。( )
A、错误( I$ P& G( R. c% U
B、正确
正确答案:# K9 s& W( Y$ j, K+ a* R' o
( D. _( l. S' q( a
第23题,用一个标识符代表一个常量的称为符号常量,符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。( )
A、错误
B、正确, d; @% o, w8 m8 r/ T7 {
正确答案:: g! U. ~1 S$ k1 T+ C9 K5 k& E
( S+ _6 c4 M8 O# o
第24题,对一个类中的数据成员的初始化可以通过构造函数中的初始化表实现,也可以通过构造函数中的函数体实现。# K0 g& Y% q3 c) Y0 D8 H
A、错误- {, ]0 I, C% B9 V0 v5 p
B、正确
正确答案:
* q& n/ X! r1 F: i4 h; U3 X{$ q# Y
第25题,析构函数必须由用户定义。
A、错误
B、正确
正确答案:
' G7 J0 N, o7 F+ r
$ P1 L& c; g2 O/ Z; j
第26题,变量必须先定义,后使用。9 s( L0 T; X8 ~! v7 V1 XN, [5 \: w
A、错误
B、正确
正确答案:
! O6 C' o' B/ f/ A! e( ?7 p
[' JZ2 H0 s: a: V3 n
第27题,在一个函数中,不允许定义与结构体类型的成员相同名的变量。( )
A、错误6 _" c: E$ g/ ae' l8 l
B、正确
正确答案:* T* O' L' J* B4 z# y( X
6 @4 ]7 z: H% {7 u( J+ g, k( ?/ K
第28题,sizeof运算符用于计算某种类型的对象在内存中所占的字节数。( )- x8 [" G9 I$ f2 Y/ d
A、错误) z! ]% l5 h5 W& u
B、正确9 Z# h0 ?\$ u
正确答案:1 g5 G' W. T" _$ E. {J( [
+ O/ z, V7 f4 T, E5 R- Y
第29题,表达式8&3的结果是1。% D. ]" }% `. S; i
A、错误7 \5 M( z' e( OA7 Z4 J$ @
B、正确
正确答案 Y2 k3 p% c+ `, w6 _
第30题,以面向IA-32处理器的VC++ 2008和gcc 4.2为准,float类型数据在内存中占4个字节,double型数据占8个字节,long double型数据占8个字节。( )0 f9 R5 T) A3 A; Z
A、错误" y1 K0 C: j0 G" k. l1 r% b# h& Y
B、正确
正确答案:
: E9 Z0 o3 I* w7 O& [! N
第31题,对于全局函数int f(void),与其完全等价的函数原型为const int f( )。* D- \3 S3 t9 }! V; N9 Y6 M
A、错误
B、正确* F+ z: P" [/ e0 e
正确答案:S& s5 t5 ~# d4 b- I- @& |7 e
' w) LJ, d) g9 V/ y$ w$ T
第32题,要在屏幕上显示"Hello,world!"应执行语句cout "\"Hello,world!\""。. a! ?9 K) T$ @6 Qk8 c' @
A、错误! {7 d& y% z% i) `
B、正确
正确答案:: c% A" {- B1 u. Q7 s* O, c
- e* n& Z* _. G) V4 s4 O5 g( I
第33题,switch后面括号中的表达式只能是整型、字符型或枚举型表达式。( )' D1 [& T( U; l+ R( J
A、错误
B、正确
正确答案:9 V% B% {+ Zt* F9 d8 k1 c3 A
+ V; k/ ?7 {4 c9 {1 K) Z
第34题,系统可以提供默认的析构函数。+ `/ G0 M: S8 o- N& U0 N% ?0 {
A、错误4 X% v. }; S3 Y" f& G3 H8 s* J% ~* Z
B、正确2 ?% d6 n. m$ g( P
正确答案:8 s+ F2 _* _# jm# ]
$ B1 J- Y& ?6 o+ I
第35题,继承的方式有公有继承、私有继承两种。- d6 O* g! y7 e: @* B
A、错误
B、正确: H! V0 D' C& L: t: t
正确答案:
. O, G: t( B. b9 _4 N$ @6 o, N
第36题,系统可以提供默认的析构函数。( )
A、错误- i4 ?0 [! o+ ^) ]# q/ c7 D2 K0 D# w
B、正确0 `8 i9 c" k' u$ l
正确答案:
" C' b/ f3 U, R3 Y! b! X
第37题,定义全局变量要在程序开始时进行,并且放在所有函数的外面,静态局部变量要在函数内部定义,但生命期却随函数的第一次被调用而产生。()
A、错误! A6 M4 e" D( k2 J
B、正确( ^; K1 [3 n. v. _- s* s7 D
正确答案:1 e+ y- M$ F; i6 e. h
9 n: r" V# M1 U" q
2 H$ T* K: f" \M1 h3 k
第38题,私有成员只能被本类的成员函数访问,来自类外部的任何访问都是非法的。( )
A、错误. h# n8 k$ R8 ^+ U
B、正确
正确答案:
) F3 g_- ~! c. Q, u) m
第39题,函数体内声明的静态变量,至多只会被初始化一次。
A、错误
B、正确
正确答案:0 l+ {' j0 y5 Z& V) x" |
/ g- j* y, s7 |( n+ D! f
+ g/ O- J/ k3 B/ C2 Z8 i
第40题,在基类定义的public和protected成员在保护继承的派生类中不可见。
A、错误
B、正确
正确答案:
$ o1 ^4 p/ |* w9 S2 c7 ]1 |- D) C- x
: h% M; y) T4 j, t* l8 Y
第41题,下列说法中错误的是______。/ R: m; F, ^0 s" p# B9 A0 B
A、不允许设置参数的默认值
B、设置参数的默认值只能在定义函数时设置7 {! j) y4 u( n" j5 e, ^- d& e8 \5 n
C、设置参数的默认值时,应该设置右边的参数
D、设置参数的默认值时,应该全部参数都设置' |: y! H: J0 g) P$ L
正确答案:,B,D
. ~, E# on9 _0 J7 Y6 F
第42题,对C++语言和C语言的兼容性,描述不正确的是______。
A、C++兼容C. v5 ~! b1 t3 i" J7 |6 e
B、C++部分兼容C0 {, N5 `3 R; A+ u8 s( x
C、C++不兼容C
D、C兼容C++3 J: ^5 `; `3 E- Q1 r" v8 }
正确答案:,C,D8 v5 Y+ u$ V+ G2 N
+ b( M: o$ t4 F9 ~6 b
! |- Jk+ X# `' ~9 g* O
第43题,下列哪些是类的特性______。
A、多态性
B、继承性1 ^2 Y0 t0 K7 g0 J/ }& D+ \8 \
C、封装性
D、虚拟性
正确答案:,B,C
4 z2 f: y- L- l: t4 {
第44题,下面哪些保留字可以作为函数的返回类型______。( |* s: z$ @& M
A、void4 d9 u0 q# Y3 p+ C, s
B、int
C、new
D、long6 C# ?: U" W- J! {; c- ?
正确答案:,B,D
: f- }6 S) ?3 L2 S# L9 R
4 h4 D1 y0 u7 ~- w
第45题,函数调用可以______。
A、出现在一个表达式中: V- T" u6 Q5 T1 U' a& J
B、出现在执行语句中5 X6 R- ~7 F- G- e7 Y7 t6 |
C、作为一个函数的实参
D、作为一个函数的形参, E9 h* V$ z3 k" G& x# l# h
正确答案:,B,C- q+ M, k' a0 V6 O1 a) \& I
4 M# l- p4 G8 R! |2 \0 i
第46题,下列哪种函数不可以是虚的______。
A、自定义的构造函数2 C4 Y2 R, z' n, ?
B、拷贝构造函数) _8 @" V2 K! W: ?4 f) k" y
C、静态成员函数
D、析构函数; ]6 K3 I1 f0 Z1 e
正确答案:,B,C4 W7 j( Y. I! q" I% N* S- t
第47题,下列关于构造函数的描述中,正确的是______。* `! s* H( p# g$ p
A、构造函数可以设置默认参数* r) r7 n" t( K& ~( a
B、构造函数在定义类对象时自动执行
C、构造函数可以是内联函数
D、构造函数不可以重载9 v5 z6 D; oS# d3 N
正确答案:,B,C
第48题,以下关于函数模板叙述错误的是______。
A、函数模板也是一个具体类型的函数- W$ t, B6 o1 w. [' Z
B、函数模板的类型参数与函数的参数是同一个概念" {e, v; V, O
C、通过使用不同的类型参数,函数模板可以生成不同类型的函数
D、用函数模板定义的函数没有类型) b5 U8 Z3 A! M. J$ p
正确答案:,B,D# P. t4 s- D* k
第49题,以下不正确的描述是______。
A、函数的定义可以嵌套,函数的调用不可以嵌套
B、函数的定义不可以嵌套,函数的调用可以嵌套2 f+ N) l: T2 t
C、函数的定义和函数的调用均可以嵌套1 A) E( \: T* x3 ^1 \5 zH- x
D、函数的定义和函数的调用均不可以嵌套: G3 c" e0 D8 |, s1 _# I) i6 Y, W1 i8 A
正确答案:,C,D
, m% j/ ~+ f2 x% c( b/ g+ L" n- e1 X
第50题,下列说法中正确的是______。z3 t5 ~7 |, v" Y, U) b: Y3 G- l0 B
A、在一个函数中,可以有多条return语句
B、函数的定义不能嵌套,但函数的调用可以嵌套
C、函数必须有返回值/ N5 P. ~$ F5 h" D9 t
D、即使在不同的函数中,也不可以使用相同名字的变量' B# r7 a# A7 ^1 ~2 |' V+ ~
正确答案:,B
页:
[1]