|
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。
- [9 n3 q1 F" r. q( i2 c- c) w5 D) J6 V; C$ o
一、单选题(共 20 道试题,共 60 分。)V 1. 在一个类的定义中,包含有数据成员和()的定义。
: Y3 [2 w# c# r4 JA. 数据
) V& B; H3 }9 P3 ~# E$ d* H+ ]4 ?B. 函数
# `$ n% P; B* y$ R( F: _* VC. 成员函数
, V, G8 j* Y# C+ g c& jD. 友元
3 z9 c, s( F5 A& A& H$ J/ |4 x 满分:3 分% }5 [5 B& ?2 u e) L }2 o* w! q
2. 类MyA的拷贝初始化构造函数是()。
4 Y I! X2 K$ M1 K& a: }. w! kA. MyA()
! h- I$ u/ m( W, }7 TB. MyA(MyA*)
0 I$ V+ Q$ l* n+ k( L2 F5 DC. MyA(MyA&)
- \/ v* k: Y* n" XD. MyA(MyA)" @+ E) j; \. w! i0 R" O5 t$ K
满分:3 分" N* Z' q+ Z: J
3. 下列()的调用方式是引用调用。
) A$ ?2 f% e+ B+ J# E/ o' p2 \A. 形参是引用,实参是变量+ f' U5 d) @' |8 k. x3 P
B. 形参和实参都是变量
6 z& B- Z; F5 s+ r# @C. 形参是变量,实参是地址值
! n. ^4 X! z3 y+ G/ n) x o" WD. 形参是指针,实参是地址值
8 z& R5 H/ f( p( F5 F+ d% @ 满分:3 分
0 T6 v. h- J1 Z* ]4. 在函数定义前加上关键字"inline",表示该函数被定义为()。* B5 l0 ]* T$ e. r/ e
A. 重载函数
/ F- f7 a4 y- `B. 友元函数
( T8 R7 J h9 BC. 内联函数
* w% f, d/ V# m& T! OD. 成员函数
+ A( U7 {4 u0 _1 [1 [$ y* y" I 满分:3 分
4 Z- G2 i4 w! x# b8 v2 S7 n6 k/ R$ D5. 假定classA为一个类,如果用户未定义析构函数,则系统为该类定义的默认析构函数为()。
H; x: u& o t7 T; L8 eA. classA::~classA(){}5 L4 q# @5 z! u. V' O0 P: S
B. classA::classA(){}
9 u5 t( Z% U% |2 Q& zC. classA::~classA(int=0){}3 Z$ o! h( a- g: e( n& o6 r. c
D. void classA::~classA(){}
$ v. k9 s# J, b# N 满分:3 分: W% K, |1 r, A8 ^ L- s8 A
6. 在函数声明中,()是不必要的。
& A: B- q1 i/ L' Z/ LA. 函数名- |( r7 l0 N# o+ s/ d/ j( {* x
B. 函数类型
# l6 h5 g5 G% k* p qC. 参数的名称
7 D. Z6 |* `) dD. 参数类型
& s `( ]/ k- n* k) H' U; F' a 满分:3 分! v6 I1 L, A! \
7. 下面对类的构造函数的定义是() 。
% [( h9 H" B7 s/ B* S6 f* c" kA. void X::X( 参数 )6 U+ D% ]9 L* G7 l$ J7 `
B. X::X( 参数 ): r0 A3 |/ W' G" ^& F j$ K2 `/ J. m1 Z
C. int X::X( 参数 )
. i3 Y; S9 c; O1 N# kD. float X::X( 参数 )
& Z. i5 _! X' \6 W 满分:3 分
' O; k1 k+ n& @) x1 D6 H; s8. C++利用()实现面向对象程序设计的多态性。5 }# ]/ {% b/ g' x7 Y6 t" v$ N
A. 类的派生机制/ S2 s# j" y U, k4 o$ G9 [! N p
B. 构造数据类型—类
4 a, {/ c$ @6 a' g6 MC. 构造数据类型—枚举9 d, L) @) M8 C" L8 p
D. 函数重载或运算符重载
: ], G. d/ O. @$ A& a* u& ? 满分:3 分, J) @9 a% j4 b$ F; A0 n8 I
9. ()不是构造函数的特征。' S8 U- T8 V$ M( Z
A. 构造函数的函数名与类名相同: f7 ^! A8 f5 M& M o, S
B. 构造函数可以重载- \' o+ r4 d1 T. B
C. 构造函数可以设置缺省参数% k: o4 K8 d* m8 \9 L Q/ T/ ^
D. 构造函数必须指定类型说明# u5 I; p4 w: G4 {
满分:3 分
% I- H5 A5 ?% q# z! w/ N ?10. 假设已经有定义const char*name="chen"; 下面的语句中错误的是()。, y& e( M8 v( x9 Q4 Z/ s/ c
A. name[3]= 'q';
0 {7 B2 r) L$ {$ S( K" j4 qB. name="lin";
+ V: e7 T7 |+ J/ j& h4 [6 A; M5 NC. name=new char[5];
+ R' s/ \7 ^3 W y. D" s, O0 GD. name=new char('q');
" o& A* Z6 v$ Y' U 满分:3 分
. j2 b& B( ^# G( |: e11. C++程序的执行总是从()开始的。$ ]/ M5 t# i0 }, {8 m
A. main函数
% q5 \' x- O0 t$ NB. 第一行
9 v" S5 I! a `C. 头文件
+ h8 {4 f# \ O5 V3 {: _D. 函数注释$ [. J1 y$ p& i) R; j9 Z, F% M4 [
满分:3 分
8 o4 C1 F3 C6 k9 u1 D12. 说明一个成员为静态成员的关键字为()。
. @# b1 |, q9 v+ @0 E; u1 mA. static
* z8 W- J1 E/ D; E/ HB. extern
# a/ G1 F8 X7 [& \C. inline$ w8 C9 a2 }9 T$ F
D. friend
" z1 H4 d7 g- D/ Z0 e 满分:3 分
* V- w# E, |# D3 B+ }5 J13. 当将一个函数f()说明为另一个类B的友元后,函数f()能够直接访问类B的()。
' K7 ~6 R: ^5 Y% K7 u7 P- ~' HA. 只能是公有成员5 ?; R* A% U5 q/ N+ U2 W
B. 只能是保护成员
) \% K4 v- X, g+ JC. 只能是除私有成员之外的任何成员
4 V/ R; {0 J( n4 F* G ~. z0 gD. 具有任何权限的成员
4 y5 s( ]; ]0 z x0 p! \ 满分:3 分4 Q! @9 z+ ]& v% y
14. 假定classA为一个类,f()为该类公有的数据成员,x为该类的一个对象,则访问x对象中成员函数f()的格式为()。
! w& k1 W! s3 M+ l C0 `3 D" L+ DA. x.f8 {/ }; b1 @$ @" c
B. x.f()
0 d C4 j# L {' J3 W0 qC. x->f% V2 ?( r+ C" h9 a+ b3 u
D. x->f()
- g1 x# q6 b6 R 满分:3 分- X! k/ U5 ]& {3 l; N8 }
15. 下面的类型声明中正确的是()。
, F8 B! f5 O5 p& Y+ mA. int &a[4];+ R- V& M; z# t7 K4 \
B. int &*p;
# g6 g4 m3 {9 ?3 X# s* R# VC. int & &q;
( w4 P) J) W: I: Y) Q! x, a3 WD. int I,*pp=&I;
: Q7 k6 |4 T3 f- ^ 满分:3 分& O/ ?8 h& B/ j! Z
16. 假定classA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。$ ]5 N1 C+ ?# X) U) U
A. x(a)
+ Q6 ` R% `9 j4 F) T4 `6 VB. x[a]$ z9 t$ N, E! i0 }
C. x->a
" t, u1 B! Z/ i$ AD. x.a
9 o% B- r5 A, _! l3 m# z1 f* X 满分:3 分; S) {& V% f: e: @# F: m8 T
17. 下面对于指针的描述不正确的是()。
! F' Z5 f/ u! v! O( g% s- p! }A. 指针是地址变量0 r: z4 ]* P7 |* U& g3 o. V. h
B. 指针不能用除0以外的常量赋值5 \7 U9 _7 }2 }, X9 a
C. 两个指针变量的加减法无意义
% y. Q$ p# F. t8 d0 ND. 指针指向不同基类型的变量长度不同' G- R' S; ^1 w
满分:3 分5 \0 W0 }' T& y- W# H
18. 一个函数功能不太复杂但要求被频繁调用,应选用()。9 a1 O. W& `' ?) s6 o9 o/ x
A. 内联函数
8 Y+ c8 o% c5 I. `B. 重载函数
8 [) Y7 e9 h+ q# C% m% m( z- ~. rC. 递归函数* e+ @& \" R' e' i5 m1 p
D. 嵌套函数
5 ^9 F; K4 M7 ` 满分:3 分0 d/ [3 D. @' [8 W; s1 j5 o
19. 在C++中,编写一个内联函数Fun,使用int类型的参数,求其平方并返回,返回值也为int类型,下列定义正确的是()。
3 e0 ?$ [) f. XA. int Fun(int x){return x*x;}" b( y$ ?% Z N- q1 c* b, |
B. inline int Fun(int x){return x*x;}
' Z8 a3 l. F, y! V5 |% D8 jC. int inline Fun(int x){return x*x;}' a& {7 i& Y. ^- j7 }& V: ~
D. int Fun(int x){inline return x*x;}
+ j* M2 [ e- E8 i" o 满分:3 分
Z2 d0 H5 }* Z" P$ o5 ~6 c20. 对于一个类,可以利用关键字()将一般函数、其他类的成员函数声明为该类的友元。9 `8 c, E3 O3 H! S+ k
A. public
4 I, ?" O7 j. m- K; W& CB. private& |+ U1 ?: j& O0 H. z
C. protected u4 `+ O( K6 A7 ~' S) R
D. friend
9 [$ Z6 E- U( y Y0 O, G' ]) _. [2 K 满分:3 分 * }5 ?9 V7 u5 ]) r5 v7 k
* G" i8 m c9 H
二、判断题(共 20 道试题,共 40 分。)V 1. 如果一个类只定义了一个带参的构造函数,则系统会给它提供缺省的无参构造函数。
* n# j3 t& ~ @$ gA. 错误0 r, p& l2 A- C/ V! ~, A
B. 正确
/ l [3 k* N/ M; ~: Z 满分:2 分
2 r1 [: _8 _0 `, P! [8 }$ r# E2. C++的变量声明非常灵活,它允许变量声明与可执行语句在程序中交替出现。
X! r: M9 @; Q" x2 w( v5 k5 h! gA. 错误! S( u) V, W# C0 |, a% o
B. 正确
6 X1 K7 F4 q% v: a U 满分:2 分
) A q" U6 h a* n+ ]: f; k4 D# E6 x3. 构造函数和析构函数都不能带参数。$ C9 o2 P) n7 { N: O- y& O. Q% O
A. 错误
- G% R, i5 ^9 ?" I1 RB. 正确% [- _( b& K l% j8 o8 G! g0 s
满分:2 分
; x0 p2 h; i1 m/ b% j4. 成员函数体写在类外部的一定不是内联函数,写在类内部的一定是内联函数。7 n- N" Z6 a: r' r |3 W
A. 错误
w5 A- {, b! `/ S! U9 Y! ZB. 正确% k9 Q# @! R8 o4 W8 d6 X* O
满分:2 分
8 B# [, y0 b' ^* b, l5. 拷贝构造函数是重载的构造函数。/ o5 T0 a }9 u _9 v7 z% x
A. 错误8 C1 @; T+ h2 p7 e Y- W
B. 正确, f2 f2 Z" V# q8 d6 r
满分:2 分
% I% @1 q* s0 z% {0 `" w" c* l6. 类和对象之间的关系是具体和抽象的关系。
1 f8 I, k% ?5 [, @A. 错误
5 }4 A* N( \5 ]- L5 Z7 B( J' XB. 正确
; m/ O- b1 k- Z( m: ^# f/ s 满分:2 分9 u. S* `3 N4 [2 U
7. 拷贝构造函数使用本类对象的指针作为参数初始化新创建的对象。+ I5 S+ V% a4 X
A. 错误
+ X# J2 P @. i7 bB. 正确
; x7 N# E5 O9 e& y: }( a. H0 r& y* [ 满分:2 分# i( w, K# T, F& p. S S0 S) W
8. 静态数据成员属于类,因此可以使用“类名::”访问静态的数据成员。
z/ I2 u5 \* V% L X, M4 aA. 错误3 H- j9 T- v( x( u. f' h9 e
B. 正确
) V& L9 N& C1 l$ u 满分:2 分
. n: X6 ^9 [$ e+ I5 d9. 若将函数说明为返回一个引用,则该函数可以用在赋值运算符的左边。
3 P3 C9 ^* ~/ ?( s- bA. 错误6 x5 G7 A0 C$ @2 m; z$ ~
B. 正确2 |& z% J4 e- G" C9 L
满分:2 分! \; j# V9 G% W. Y3 k1 [+ Q5 l7 ]3 s
10. 赋值号两边的数据类型不一致时,将无法进行赋值运算。
7 s8 w. R2 F3 UA. 错误/ {& }. y5 t' x) b! c' A
B. 正确
$ n& L- v9 K" c8 l4 t- s$ m 满分:2 分/ \9 s, [) B+ E/ B$ j+ `
11. 常量和引用在声明时必须初始化。. C' }, X* b% ^
A. 错误! ]# b1 c' O3 q' G! d9 c5 O# s: n
B. 正确
5 [8 u6 w9 |) ~% d, {0 t. o 满分:2 分, c! D( L K C' o( r; ?
12. 类中可以包含各种数据类型的数据成员,但不能有其他类对象。3 |1 ?# R1 }. e) c- j
A. 错误4 _- G1 r# g& u% }/ A3 G X
B. 正确' u' k5 ?7 h* t, @+ s7 \7 z
满分:2 分
s. F% Q) n, B8 { u- w- E& e! F13. 类中成员的默认访问属性为公有,结构中成员的默认访问属性为私有。
7 {, I3 |% e3 o& d7 M+ ]A. 错误
4 s M- ^. K3 R# G8 mB. 正确
$ E/ g0 w$ P# `$ C5 O 满分:2 分4 L- T; O; N5 L8 e$ _7 C y9 t* K
14. 成员函数体写在类的外部时一定要在类的内部保留函数声明。 ^) x! `8 ~ @1 Y1 i2 g
A. 错误
2 [2 r3 f/ w% K, K, }B. 正确/ j% x* e2 G+ B. O/ ?
满分:2 分
; Y4 I+ M- C7 x7 t15. 成员函数体写在类的外部时不必在类的内部保留函数声明。
& C0 }/ o) C7 k7 u! b% WA. 错误
8 R8 ^* ^6 L2 [B. 正确) v2 J% x0 o& x* C( _) q7 D
满分:2 分
& I$ E2 t0 N- j! g9 t16. 不能在类声明中给数据成员赋初值。
8 S& E; c( z: mA. 错误
7 V! \, i) J0 r4 R Y8 [B. 正确5 a/ X4 @% t* Y9 c6 t3 B" m* @
满分:2 分
( ^9 @2 I. ~" \' o6 \17. C++编译器不能够区分重载的无参函数和缺省参数的函数。2 M, A' T, R( S: G& K
A. 错误
c1 S" l9 V1 lB. 正确
0 I& q" n2 u/ r$ g 满分:2 分: A- N9 m, u P @1 b- E
18. 使用inline说明内联函数时,必须使函数体和inline说明结合在一起,否则编译器将它作为普通函数处理。
9 ]3 M; K1 `* ]' n5 A# a) e+ X/ uA. 错误
% f( C) ^, q2 s( ?+ ]B. 正确
7 d; x/ O, Y9 J$ s( [0 L i* x 满分:2 分9 Y* m, `! }2 w
19. 通过类对象可以访问类中所有的成员。 y5 d+ W5 g: J: z( n! y
A. 错误
# u& X1 v- B4 O( }' f- t% yB. 正确; p. k) C) S2 p( W! N( s( z
满分:2 分
% g, z3 ]) r8 T3 x20. this指针是一个const指针,不能在程序中000它或给它赋值。 B0 l6 M! Q) B1 K; ?
A. 错误
: ]( U, L8 h. Q* Q" P' F( D p XB. 正确6 m B. ?# k- r5 Y5 |7 N) q
满分:2 分
- A% |, E- v/ N7 N7 O6 b
9 p* V6 G/ J4 ]谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。 |
|