|
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。
}: g; F1 U( a N' o
5 S; g4 x" U( X* @一、单选题(共 20 道试题,共 60 分。)V 1. 在一个类的定义中,包含有数据成员和()的定义。
2 w' [+ j' o- K+ i% T# _A. 数据5 i, v5 ^/ X" O1 l h
B. 函数( V x8 }5 ]% S) f) L' j, C
C. 成员函数+ |9 D( N; `" x8 q# I* [& _* o
D. 友元7 K5 b6 X* e& w+ [. r
满分:3 分7 }# u$ s Q; q4 {& ?! j' T
2. 类MyA的拷贝初始化构造函数是()。
" ^0 ~" i+ t: i4 gA. MyA()
7 ?5 m8 f1 {2 JB. MyA(MyA*)# F. x# w5 F: m9 i7 v
C. MyA(MyA&)
% Q7 d5 v8 P4 yD. MyA(MyA)
" ^* x- U' x2 H$ R# w* F- | 满分:3 分5 `( T, A1 [* I5 U2 H7 X( i
3. 下列()的调用方式是引用调用。7 i$ ~1 C! w6 {: r
A. 形参是引用,实参是变量" W& c' Z+ C3 f4 T* i* E
B. 形参和实参都是变量
+ c% o* n/ n- u0 ^+ YC. 形参是变量,实参是地址值+ O U9 `& M4 j' u" B) h x. u/ F0 u
D. 形参是指针,实参是地址值
' O* z D7 u* } 满分:3 分: w" x) `! z9 |6 X' B
4. 在函数定义前加上关键字"inline",表示该函数被定义为()。
; r) d' f2 J( M5 D8 ]A. 重载函数
+ M$ T( @: A! z8 d3 J- IB. 友元函数0 I. E) W( d$ R3 k
C. 内联函数
3 Z8 |& O$ W" b# \ P' `D. 成员函数4 \2 l! w o5 I; @ D4 L
满分:3 分3 ?- e! t$ X& i& f9 E! K
5. 假定classA为一个类,如果用户未定义析构函数,则系统为该类定义的默认析构函数为()。" `. [& x+ H0 V% z/ ]. p8 g
A. classA::~classA(){}, g3 b/ @# e9 s$ G; F. H3 b+ J
B. classA::classA(){}
8 q" Z* @/ m# }5 d9 dC. classA::~classA(int=0){}
1 C2 e, O4 W8 ^+ B, `D. void classA::~classA(){}
5 L( H" Y& U: k2 ?8 C% o/ f 满分:3 分1 w5 c2 i* q, Z- d. X2 Y" q
6. 在函数声明中,()是不必要的。
( g: a) A! V9 o# |. \) n- }A. 函数名
$ F# }5 q- _9 X" `* WB. 函数类型4 O2 I1 K; J& F: ~' b- F3 P
C. 参数的名称
9 t6 }0 c1 d5 i6 wD. 参数类型 M7 l- [* U# o6 F0 N% z
满分:3 分! T0 F3 ~' n/ a5 C e
7. 下面对类的构造函数的定义是() 。; A8 a$ \# P. k- ]2 `
A. void X::X( 参数 )( f# z& u& d; I
B. X::X( 参数 )
( I! z3 [& A( ?0 Z$ jC. int X::X( 参数 )# d$ R( x- t% h: Q6 z2 H+ j8 h
D. float X::X( 参数 )) j' D/ ?9 d' g5 M
满分:3 分
/ e, k- i: \2 U% ~, u0 k, C8. C++利用()实现面向对象程序设计的多态性。- F: D, y6 C u9 h; P$ Z3 T: A \
A. 类的派生机制
" R) p$ }" s9 q) f( |0 PB. 构造数据类型—类
. j- T0 [: _% G/ G3 V2 C/ X8 vC. 构造数据类型—枚举- ^5 g* v1 A9 J- f' \3 c
D. 函数重载或运算符重载
2 b0 V' x5 h! e" _ 满分:3 分
) g; o. R$ E! l9. ()不是构造函数的特征。
# o, m9 ]- l/ {4 ~A. 构造函数的函数名与类名相同/ \ B- D* z0 W& P) ]8 e
B. 构造函数可以重载! j; O0 @9 z9 \) J0 }0 K
C. 构造函数可以设置缺省参数0 G2 P+ H0 u: H# C
D. 构造函数必须指定类型说明2 T9 h7 B2 v$ r; |4 X3 O' x. D0 h
满分:3 分4 \! D4 U* p3 S1 \1 @" k, \) M0 |
10. 假设已经有定义const char*name="chen"; 下面的语句中错误的是()。9 M0 r8 [7 v0 b% `) d- H6 D0 F% ]
A. name[3]= 'q';
2 ]8 v; h3 r7 i7 iB. name="lin";
2 b+ L' V6 n+ X+ }/ c/ _C. name=new char[5];
7 E0 b+ {1 E% JD. name=new char('q');
% @1 k% P8 T9 L# c7 ^( M* L 满分:3 分0 F5 A/ Z! M K& o) {
11. C++程序的执行总是从()开始的。! X; L1 o* b- P; z- m
A. main函数
; g, }8 Z7 x3 P( g( [B. 第一行1 P+ M1 d9 {1 d/ D" \5 c5 e( L
C. 头文件; d% c2 c+ ]8 ]
D. 函数注释
( R. B0 j' w e2 H 满分:3 分
9 Z: w, R& u) l* |4 R12. 说明一个成员为静态成员的关键字为()。/ L, t0 U5 m6 m. w
A. static
& q! C5 i4 } rB. extern
% \, w! _9 ?% W6 e9 J% TC. inline, W+ j( t( `5 R9 o$ ~5 S- ?* s! q
D. friend, S( Z' W& T* d( Y/ H g; L) [
满分:3 分
" V2 p1 l0 ] ?; u/ _/ X, _, z13. 当将一个函数f()说明为另一个类B的友元后,函数f()能够直接访问类B的()。
) M* H5 {; ]8 T$ ?- y& b# gA. 只能是公有成员% q8 g3 A+ h E$ N2 n1 x. ?) g
B. 只能是保护成员4 ?: d7 E. m6 l! T. g# C$ ^* f' ]8 U
C. 只能是除私有成员之外的任何成员
% Y B. r3 h( ~) [& S7 PD. 具有任何权限的成员
) Q- u$ V4 M7 {& M N6 w# w X- X 满分:3 分
5 |7 K7 | f6 M6 p14. 假定classA为一个类,f()为该类公有的数据成员,x为该类的一个对象,则访问x对象中成员函数f()的格式为()。
1 B5 F5 e B9 n8 d7 }- |A. x.f" K5 e3 k9 z; E7 q
B. x.f()
- Q; d5 ^9 B2 `& ]+ `C. x->f
% c2 x# O+ H! U" c) J* g# pD. x->f()
6 Y/ k0 K8 s( V, J& U9 v4 v 满分:3 分
, ?6 e2 c+ @" H, h+ q% W15. 下面的类型声明中正确的是()。, q1 c) V) o2 B
A. int &a[4];
% \. |/ c( ^' c/ @' Q: hB. int &*p;4 j+ ^- e$ e' w6 @+ v. v
C. int & &q;
* T8 X2 |+ o3 H! cD. int I,*pp=&I;
. ]8 o; B5 \) V5 A; T 满分:3 分
1 z- }; \$ G7 X& f16. 假定classA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。
B' @0 D" G3 ^8 g% }A. x(a)
' u! D, ^" M. g3 m6 LB. x[a]
/ [) w- U( i# S/ F, c3 W1 rC. x->a4 y+ }/ P2 K% h ]. {: }
D. x.a1 q D0 P; R9 X; ^& M$ e$ z
满分:3 分
/ H1 T- T- l' _; y4 ?; S17. 下面对于指针的描述不正确的是()。
& G$ L9 \. S8 f. RA. 指针是地址变量
4 {* ~+ L: v. X( H2 j* R: _B. 指针不能用除0以外的常量赋值- z, y% ?: C# L" @9 ~4 h, d6 N
C. 两个指针变量的加减法无意义
: R; |' r& q- h3 X, O0 jD. 指针指向不同基类型的变量长度不同
: M2 t4 ?4 y3 ?+ l) Q% j' [ 满分:3 分
) n# h' Q% x7 i, J18. 一个函数功能不太复杂但要求被频繁调用,应选用()。
% c1 I' J* g8 S" e/ y& ^A. 内联函数( r; R9 Z% r2 U" c: u
B. 重载函数
4 W" o$ H' }$ q$ ^C. 递归函数
: h1 O& q4 M- }4 E' ]- }3 dD. 嵌套函数
% N! {' A% s/ @- S 满分:3 分7 P) T/ c; H3 } Y! [
19. 在C++中,编写一个内联函数Fun,使用int类型的参数,求其平方并返回,返回值也为int类型,下列定义正确的是()。 | M( K" c- m; P( e5 u
A. int Fun(int x){return x*x;}
. y/ Y6 {8 j( t( ^6 ~B. inline int Fun(int x){return x*x;}
# C: r4 j& J6 ]9 _2 d7 DC. int inline Fun(int x){return x*x;}2 c2 S6 O% M: _+ [! M
D. int Fun(int x){inline return x*x;}: ]5 R' y$ M0 d+ e: p2 O" D
满分:3 分
: V6 E4 S. g+ @8 x# F) D20. 对于一个类,可以利用关键字()将一般函数、其他类的成员函数声明为该类的友元。
# C; V. O! O+ g5 gA. public: q2 S8 c$ f/ D% a1 ?
B. private! @+ v% ?9 V# F& n5 A4 S7 f
C. protected
% b* B y( Y1 Y. S1 p1 f2 ?D. friend
, ?; x/ P* `+ G 满分:3 分 ' _7 w' _8 o) g6 p7 Q
! Z' z" D# Y) m6 M二、判断题(共 20 道试题,共 40 分。)V 1. 如果一个类只定义了一个带参的构造函数,则系统会给它提供缺省的无参构造函数。
& m9 @) D2 o; a1 S2 t' y, PA. 错误4 p/ `' z* Y% p4 w
B. 正确/ s2 F6 F5 r% A
满分:2 分7 s) c* v3 H* I# ` f& o1 S+ o
2. C++的变量声明非常灵活,它允许变量声明与可执行语句在程序中交替出现。0 g4 r1 M5 L @
A. 错误
8 r5 D8 ]4 \+ ?. v* X. TB. 正确. T/ p( M% d. x4 }) Y7 G
满分:2 分
% g* ^3 Q: ]( [, `7 H3. 构造函数和析构函数都不能带参数。
2 r. H( j" P2 v: d+ e9 \A. 错误5 ]) T' U7 ^! M) f1 f3 x
B. 正确
) a8 [- v# l1 C) M 满分:2 分8 Q: p5 b/ B9 q
4. 成员函数体写在类外部的一定不是内联函数,写在类内部的一定是内联函数。& z$ i, _6 K) A/ v) p7 x4 }
A. 错误
$ l5 O+ W8 F8 [1 PB. 正确 n+ o" E% u$ @$ O1 b6 |; k
满分:2 分9 d% O0 _, m, I5 a4 I' m" P
5. 拷贝构造函数是重载的构造函数。8 ?2 z: F* m. s+ ~# |; l/ {4 ?
A. 错误( ?6 A! k2 w4 o% O% M3 k. r! i/ J
B. 正确
4 f+ Q8 M9 e( r2 Y3 c 满分:2 分- \/ g- ]# m1 j1 s
6. 类和对象之间的关系是具体和抽象的关系。/ x2 t2 Z$ d* N9 ]$ c" w: b9 k0 }3 i( d
A. 错误$ _- u' k8 h) ~- m
B. 正确- \# Z& ~- t7 j+ z
满分:2 分
9 l# i. l. l: e7. 拷贝构造函数使用本类对象的指针作为参数初始化新创建的对象。 i) x; @2 `" e" P. w
A. 错误
; G$ M5 S2 T1 N X9 a6 L1 ]! V1 nB. 正确$ H. L; D9 t7 b: p. z1 U
满分:2 分
3 q- C6 q4 G( {6 T- x6 Y# W) E8. 静态数据成员属于类,因此可以使用“类名::”访问静态的数据成员。# D5 e, H2 b8 |0 a3 B
A. 错误( ~( L7 q) ~( U' g' t k
B. 正确4 `. p; {% U9 h$ H, U* d& ^1 E Y# D
满分:2 分 ^( H, t& \: t0 Q
9. 若将函数说明为返回一个引用,则该函数可以用在赋值运算符的左边。
, `1 @! I) g% i" d+ QA. 错误( D* `: `# v& |- w2 A6 Y% P
B. 正确
6 B [; y8 m8 [! C) {+ \$ a 满分:2 分
4 d: H* f9 a. j7 p- Y% z10. 赋值号两边的数据类型不一致时,将无法进行赋值运算。
# F# O4 ]" B- rA. 错误
' Q9 {) H+ U' bB. 正确% @7 S2 \) h. p" Z$ h: l0 q f
满分:2 分: W& m* n, Z% T1 E5 A* W
11. 常量和引用在声明时必须初始化。
! ~+ n7 W/ w n7 BA. 错误* G! E; k' h' T1 A9 Z: B
B. 正确' g* T) p' V) \( h4 M% U# }
满分:2 分1 S! v' g( @# f9 G8 ], f7 A1 L# m
12. 类中可以包含各种数据类型的数据成员,但不能有其他类对象。, _) O9 P3 J2 o% R) J$ w3 L
A. 错误
3 y9 {; _0 Q K. p' KB. 正确
P7 v5 d3 x. h- O 满分:2 分- v) t0 h2 D; J8 {4 m9 n
13. 类中成员的默认访问属性为公有,结构中成员的默认访问属性为私有。
! N; o P1 \( N$ `A. 错误
; A5 j0 I: o. |* RB. 正确) x! F9 \ n$ d
满分:2 分
: H$ u I* ]8 |, k6 A; }4 j14. 成员函数体写在类的外部时一定要在类的内部保留函数声明。 \2 g) Z8 q: X
A. 错误
2 ~5 l3 z8 a1 |" j+ J, l/ j& ?B. 正确
) f: w3 @. y) }* U- U- z% `. h8 D2 x 满分:2 分6 n/ t _+ W9 }& Y
15. 成员函数体写在类的外部时不必在类的内部保留函数声明。! y. w4 l( _0 d5 r
A. 错误- V1 ]& c* _1 @ _, B2 j
B. 正确
& l) o, o" e1 Z1 S4 k' p# s 满分:2 分4 w1 `4 e, x9 l( Y# r
16. 不能在类声明中给数据成员赋初值。
" X3 j% ^/ ~) E; oA. 错误
_: B# `3 Y- [+ C6 UB. 正确, ~* g/ o' V7 k0 O0 u. N1 f; U; ?
满分:2 分+ [. ?$ m6 e- K5 y' _+ G
17. C++编译器不能够区分重载的无参函数和缺省参数的函数。8 M A' h9 V- |
A. 错误
N9 r9 L2 W% |2 xB. 正确
$ X) @9 q! v( {; q' |4 t* X; U 满分:2 分
" D% l4 r2 Z. `* W2 D; |7 s2 U18. 使用inline说明内联函数时,必须使函数体和inline说明结合在一起,否则编译器将它作为普通函数处理。
8 p/ ?5 `+ T5 A) r8 ~A. 错误9 n$ z6 A' [- @9 \1 f
B. 正确4 I1 t* j9 W4 V- c1 k
满分:2 分+ m2 `$ t! V. i( e
19. 通过类对象可以访问类中所有的成员。
6 @, r1 ^! u/ q* M4 z, e W% uA. 错误; _2 G" k! j( Q" q- M5 n
B. 正确5 P: j D4 t! @- |+ s1 m- {
满分:2 分# s" Z* n& V/ A$ ^8 G, l
20. this指针是一个const指针,不能在程序中000它或给它赋值。
7 U- Z, I4 |" k0 P7 KA. 错误5 e9 s0 O; q: ^% Y/ S& I
B. 正确
" ^5 c" x2 C2 r( k: N 满分:2 分 9 u" n( g6 O. Y: c5 `' J
/ c$ f ` Y7 r8 {: ^
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。 |
|