|
谋学网: www.mouxue.com 主要提供奥鹏辅导资料,奥鹏在线作业辅导资料,奥鹏离线作业辅导资料和奥鹏毕业论文以及其他各远程教育作业代写服务,致力打造中国最专业远程教育辅导社区。5 k) }8 n h( I% S' u
, s! `, j7 b$ Z; |' w4 s! n
一、单选题(共 20 道试题,共 40 分。)V 1. 在不考虑强制类型转换的情况下,关于类中常量成员函数的下列说法不正确的是________。1 O2 ~2 ^9 P0 m1 {& M7 [/ O7 o
A. 常量成员函数中不能修改本类中的非静态数据成员。0 N ^9 K8 b9 e0 I/ b8 G
B. 常量成员函数中可以调用本类中的任何静态成员函数。
# Y ]9 _5 X2 }3 C% A5 z" X! @C. 常量成员函数的返回值只能是void或常量。0 A3 w0 D3 w4 K# K! H( Y
D. 若常量成员函数中调用虚函数f,那么函数f在本类中也一定是一个常量成员函数。
& h. ]. _+ a$ ]* \* \4 s! [ 满分:2 分7 c- S- R. w5 J7 y2 O, [
2. 以下叙述中正确的是()。
* w1 T7 |& f! L7 w; }: @A. 构成C++语言程序的基本单位是类8 N6 q. {( o3 `8 J
B. 可以在一个函数中定义另一个函数$ @+ A! e! l v( ^7 U; v6 W
C. main()函数必须放在其他函数之前
2 P' Z* l. a% k4 B0 w; M& `D. 所有被调用的函数一定要在调用之前进行定义2 U' ~. x% G% ^$ {% b: ?
满分:2 分
; m6 f, l% s9 J3. 以下各选项组中,均是C++语言关键字的组是()。
# E; x/ B5 }4 \8 mA. publicoperatorthis; y; n g: {' b3 L5 P
B. shodstringstatic$ P, N* m# U" N+ f7 v
C. itwhile>=- V w8 M8 I% w0 p
D. privatecoutprintf# y7 v5 ^( }* {" }2 Q0 ^
满分:2 分1 K0 V9 h! ?# h0 h
4. C++语言的跳转语句中,对于break和continue说法正确的是()。
% v4 i" \' x$ c+ c1 W- P+ _A. break语句只应用与循环体中# \& N& s. o, M% i
B. continue语句只应用与循环体中4 Z6 |2 _: Q9 A9 e' I, H' ]
C. break是无条件跳转语句,continue不是
/ z8 }& e4 J8 f1 Z% J* oD. break和continue的跳转范围不够明确,容易产生问题
4 e" @9 i6 @2 q& a( h/ ~* B9 l 满分:2 分
; t! A4 @$ T: H8 ^# \) M# r5. 要声明一个有10个int型元素的数组,正确的语句是( )
, }: N. ]0 H$ f: g O4 sA. int a[10];
* i* }: k* \8 G+ OB. int a[2,5];3 w/ D; L9 a- i* K
C. int a[];9 T9 G/ E* S" X1 \0 t- m4 B. P
D. int *a[10];
/ v* ^ Z9 M( f, d 满分:2 分; ~6 M& }) J+ U, `( L
6. 循环体至少被执行一次的语句为( )# b( N2 p' e9 J. |. A% U( |' d i; m
A. for循环0 g8 H$ F8 ]$ V w, ]
B. while循环" @2 G3 t5 L, `9 _$ J2 R" z
C. do循环
3 E. s% E9 D- M d. |) `0 vD. 任一种循环* l6 A. | s( ~7 ~9 u* }
满分:2 分
& c7 K) A {% h$ O: g9 u7. 在下列关键字中,用以说明类中公有成员的是()。( J) A% k& f: e$ y
A. public, F2 I: W6 @ ~& W) f9 \
B. private
& G) N8 I1 _% q# P' Q3 ZC. protected
' v# _! b: ]! y, A3 UD. friend
. E! v* h7 z3 {' @5 C2 F0 }+ V 满分:2 分
, S! k7 X# J# ]% ]! t- g) F- t$ z* Q8. 程序设计语言的基本成分是数据成分、运算成分、控制成分和__________。
9 s% h# m/ @% iA. 对象成分' j6 F5 M5 P) G) N0 d
B. 变量成分
" z" E, }/ h/ `/ i' y! AC. 语句成份% r, s3 }; N: K) l1 n/ B. }
D. 传输成分
* C' m3 t3 T" X4 w" e1 I 满分:2 分
3 q( v. d- q5 C/ W( v9. 关于异常和C++提供的异常处理机制。不正确的说法是______。( )
1 L8 e( K( i/ Q7 @! M ?A. 若程序员预见到程序的异常,则一定可以通过修改程序代码来避免异常出现+ N4 g# A0 P- }5 t& ]. I! e8 p. i
B. 使用dyname cast操作符可能会发生异常2 h/ Z: Q' @3 A# w7 G0 ]
C. 异常可以用catch捕获处理* Y2 |0 n! v% d7 s
D. 异常可以是对象,也可以是普通函数8 h9 U* e, M3 D/ M
满分:2 分' @, w3 m2 G5 e, n% \. ^; O4 j
10. 下面关于数组的初始化正确的是_________。
4 k7 j3 ` ?2 k4 DA. char str[]={‘a',’b','c‘}4 s7 A: \5 a; Y% l. H/ \
B. char str[2]={'a','b','c’}
9 [, j3 v6 ~ g5 N# y3 RC. char str[2][3]={{'a‘,'b’},{’e’,'d’},{’e’,‘f'}}0 l! N" p) o) l0 q# y1 v( g: b
D. char str[]={'a','b','c’}
# C8 f& V+ Z$ s8 o$ c2 G/ g& t 满分:2 分7 c4 k- g. I2 l# ^! ^# j
11. 下列关于构造函数说法不正确的是()。2 x Y# v0 y; [
A. 构造函数必须与类同名
6 F! k+ j5 G1 P1 L4 x3 l/ \% OB. 构造函数可以省略不写
5 t3 N/ L5 F' y; h8 Z2 f, TC. 构造函数必须有返回值
' @+ e/ r4 h- d6 X2 QD. 在构造函数中可以对类中的成员进行初始化
J3 T0 ~* G+ Q' \, U 满分:2 分2 C" N5 m, {3 L8 e
12. 若整型变量x=2,则表达式x<<2的结果是()。) i v# d/ S2 H/ \) g
A. 2
$ M! Y, \; Q5 z9 M6 ]B. 46 Y& f+ J( V; h) _9 O
C. 6
) A8 `: a. e) ^4 z: S! ]" x; k5 A9 LD. 86 R0 j3 R: Y% r; ^
满分:2 分% v9 u6 B! h1 s' o- ?. ?# C& n
13. 整型变量i定义后赋初值的结果是()。 inti=2.8*6;
4 {/ R/ |) e' a- s z2 lA. 12
$ s) |; y' }6 {2 V7 mB. 16' C2 |# a9 ]7 j4 N/ T
C. 17% u; e4 \& @5 z4 [: O$ O- k
D. 18, y" Q* O+ F" p# L
满分:2 分$ l# O$ @& _* j" ?
14. 下列标识符中,()是文件级作用域。' V0 m' z% q; E9 Q7 U
A. 函数形参
+ L, {! @2 U( q6 S2 f1 L9 i7 `5 yB. 语句标号
, K4 z1 M2 Z$ I2 sC. 外部静态标识符, s' U+ n1 ?! U: b) l& g% f
D. 自动态标识符% R$ P. ~# V% P
满分:2 分8 g% k/ H( u" q5 |- H2 S
15. ( p8 [* J' c- ]6 X
下面程序的运行结果为_________。
1 i' G) s; o+ E' \ T9 x: Q) C, E% I% B
#include* G/ f7 B3 }2 N& N: {- }" |
void main()
0 Y7 {& B; ~+ c4 d" X5 Z {- [- y+ Z' U/ V, A; D j
for(int a=0,x=0;!x&&a<=10;a++)3 n# j* b5 J# h
{$ \+ Y% g3 J. w2 n' k: R# p* r3 L; n
a++;" t4 z/ j6 M& v7 p- g( w
} l
3 Z' _% A5 W9 c' u9 Z" t cout< }
6 t: Z/ X5 S+ g6 Y' |/ x5 w+ P: q3 i4 X. H; B! c
A. 10
- k% i& q5 ?4 E x7 aB. 11! _: _# L! o; V
C. 12
' Z& v- f3 `$ b$ vD. 0, O; e" x$ w, L4 z7 I! K% V
满分:2 分
; Z/ [! c! r5 m" C16.
3 _7 i3 A8 G, A7 u T2 E在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函
6 d- S) c* _7 x, z7 k' O7 x* V; S
! ?0 q! S5 J1 m+ P数是_________。
5 x, u. s" z" S2 [5 e+ ?4 d3 y
: z* k5 y/ V# {A. 友元函数
+ J- b/ o8 O; T* eB. 虚函数
0 e1 q& n* v2 U7 }C. 构造函数
, ?. N! L1 Q' B" @D. 析构函数% _9 Y/ D$ v# Z. s6 p' {& k
满分:2 分% K" Z4 [( u7 p0 n
17. 下列语句中不是死循环的是_________。' \" e; M6 O: k: ]" U
A. int i=10;
4 \0 d! s7 B- T9 A O* {while(1) 4 Q0 e5 b$ u8 r [5 P. d: q
{
3 ?" t, g1 g6 H- ]' y i--; 6 d9 ~# {. j1 t0 Y V! c
if(i==1)break;2 L6 _' {# V3 {
} 4 D X& U, R1 b( S% S9 d* h# ^
B. for( int i=1:i<10;i++)
& ~( E2 o/ |) Y; M" l3 i: i1 C Z {' P( k' m5 y4 n
i--;. U+ Y5 u3 q" N0 I- @% F
}
6 U% m( Z8 w3 c! }9 Z( tC. int i=0; ' V# V+ }8 t& l/ L" J
do{
/ o+ ~3 ?; l3 y) _3 G9 _: a( z i++;
, v( p& `1 L4 d, |8 R}while(i>=0)% i w. z. ^& u, e' [( D
D. int i=1;
; T' p: P* F) O6 O6 ~for(;;)i=i+1;1 s- `* o8 u8 f
满分:2 分
]0 f/ ]" V2 Z9 D8 G18. 下面关于数组的描述错误的是_________。
* @. e L! X! T8 h3 _& u" o9 _8 E! qA. 在C++语言中数组的名字就是指向该数组第一个元素的指针
2 p" J& c C; R: `! gB. 长度为n的数组,下标的范围是0-n-1
2 T3 L) G2 j0 Q1 ^) `0 ~C. 数组的大小必须在编译时确定
g+ f- L& T6 i' h* Y1 e. [) gD. 数组只能通过值参数和引用参数两种方式传递给函数
; p6 p! G' i3 q4 G# R& J V 满分:2 分* Y) ~: T4 X" @! R6 G
19. 下面关于类的对象性质的描述,正确的是( )% W4 ?4 ?" X. A( Q( q
A. 对象之间不可以相互赋值2 [, f0 p6 v6 P+ e, r
B. 不可以说明指向对象的指针4 X- A! i# k4 U+ I3 c! A
C. 对象不能用作数组元素5 \9 E+ g: z( ~
D. 一个对象能用作另一个对象的成员8 M/ B9 x( \( m6 Z$ K& Y
满分:2 分. D8 [( \; ]$ h. M8 k
20. 下列各类函数中,()不是类的成员函数。
3 @# i9 ^' U/ v+ tA. 构造函数- p3 D! [4 ~8 e* M
B. 析构函数
) d% P$ s. F* L5 i4 cC. 友元函数4 G! a1 x% p% Q* R
D. 拷贝构造函数+ X4 [$ {$ j9 [5 o
满分:2 分
7 U" L5 z) z' l0 O2 F. \
( q8 w, ]. V* C( M" E! R二、判断题(共 20 道试题,共 40 分。)V 1. 用new动态申请的内存空间,必须用delete来释放。' `; s* M3 U2 s7 N8 @
A. 错误
, y" Z/ f w1 {. @B. 正确# a1 P- f/ h2 \: R& [0 c$ F
满分:2 分/ Z, y' K1 }8 N: X- t
2. 程序的编译是以文件为单位的,因此将程序分到多个文件中可以减少每次对程序修改所带来的编译工作量。
* R# R3 H" N# }; k2 y0 c% T" DA. 错误# F* O3 }! g2 t- v/ t
B. 正确
, I- l, J- A/ c/ @/ G5 s 满分:2 分
# @/ a) @$ u3 m" e3. 16位计算机中整型占4个字节存储空间。
( k, j% F. b$ d" c. f# ?5 pA. 错误) u* Z" R$ \6 }8 x" c1 c+ r2 J" T( Z
B. 正确4 L. ~: n% `3 q
满分:2 分2 _) H& l5 g! h! b2 ~
4. 空类型指针不能进行指针运算,也不能进行间接引用。( )+ o. t3 A7 Y x) U& Q+ [
A. 错误
) c! B7 S& p+ N; [7 x, t. L, cB. 正确3 b+ [, v1 M6 z3 ] \; I( O- \
满分:2 分
! ~! o" f1 n. h2 P% C5. 要在屏幕上显示"Hello,world!"应执行语句cout<< "\"Hello,world!\""。
$ R, Q+ z& o4 MA. 错误
0 U6 Z8 ?1 t$ qB. 正确
{* p6 W5 H9 k 满分:2 分: [& O) Q* |+ z5 G
6. 下面两个语句是等价的:charstr[]='hello,world';charstr[11]='hello,world';, ]% U+ k% P( E9 K. ?/ z3 C3 m- w
A. 错误
* G9 g; A. s2 o9 d% n4 g. e# FB. 正确4 l* n1 r3 [2 b% N4 m" M' F
满分:2 分7 A9 n) x( W P, _# H
7. 系统可以提供默认的析构函数。: }6 s$ J9 k+ w/ n, X1 ~
A. 错误
* A/ @ t( E9 S) H! Q2 zB. 正确. [/ s7 @2 S! V5 ?+ }# n0 X | s
满分:2 分# c( _3 v+ V3 Q( n% i' m/ K" B
8. 程序设计的目标在正确的前提下,其重要性排列次序依次为:可读,可维护,可移植和高效( )/ G& B; C/ {' H6 I: s' o) I
A. 错误2 m, H) g/ d# I9 M! {: l
B. 正确
; K5 M. A0 l" f* e& x# g0 Z! w 满分:2 分5 c8 a8 ^: M$ l' W% V! |* C2 D
9. 空类型指针不能进行指针运算,也不能进行间接引用。( )
5 r2 x" O; z* @# FA. 错误9 t) M, I% C: y. v( M
B. 正确1 [. x8 W8 L: v0 T6 ~9 A& X! D
满分:2 分
n7 z/ r# C# o( s; `2 G3 H10. 变量必须先定义,后使用。/ r- S$ H3 J3 F
A. 错误0 ~# M. X3 a% Q9 E. K
B. 正确
1 a7 N- S+ A" i 满分:2 分
0 q( E" [5 G/ S% |/ Y11. C++中函数声明就是函数原型。( ) n. w' v' `) q1 x- h7 s. e' m
A. 错误" a0 H" x# D6 [( ?% q- Y1 X o
B. 正确, ?6 w$ B; K0 N2 L( W
满分:2 分
L0 C/ c1 A1 R; e. B" D12. 假定一个一维数组的定义为“char*a[8];”,则该数组所含元素的个数为32。
/ R2 |8 @9 q6 K( Z1 u' k1 ]: CA. 错误
- `% {( d ?% }0 R. ZB. 正确
: D: L1 }7 w0 P 满分:2 分/ l+ G* I7 V2 _! X0 n% x9 O
13. 作为语句的函数调用是通过函数的副作用来体现的。
3 w- F) ~( J' EA. 错误+ f2 V; f0 X) ?( v. E; C
B. 正确
K) W" G: \1 [ 满分:2 分, U3 Y9 [' Y$ F. K$ q6 g" c* z8 Z
14. 函数体内声明的静态变量,至多只会被初始化一次。
6 J+ D/ N' m" ^A. 错误7 X$ G1 {# B3 u) z' V. {
B. 正确9 T$ k3 G% U O ~
满分:2 分
9 B; |$ }# k# c( D# C& Z- `15. 在一个函数中,不允许定义与结构体类型的成员相同名的变量。( )" G4 H1 e& I) |5 A/ h k' j
A. 错误& v# J2 d! i5 |4 e; h; t5 o
B. 正确6 m( J7 l' \+ J# E- f7 l( c
满分:2 分
4 u, l% {- K! f$ p16. C++程序的开发步骤通常要经过编辑、编译、连接、运行调试这样几个步骤。( )$ W: n7 k( t2 t
A. 错误
0 D! t# d Z. H0 AB. 正确* w5 d" t; _. B2 B4 R0 b& L
满分:2 分$ t& i5 F( g% z9 z7 k7 F
17. C++语言程序必须要有return语句( )
; L& r- i _! ^A. 错误
+ N: C& K& u x- @B. 正确7 N2 o6 ?# n5 V
满分:2 分
$ n; j. e- h1 X- ]+ I18. 声明一个结构并不分配内存,内存分配发生在定义这个新数据类型的变量中。( )0 u# s, o+ |7 Y$ q
A. 错误" D6 d$ z& Z) b. U, H
B. 正确
7 d/ R: f7 X* o! C& b5 D6 } 满分:2 分
/ i4 N; L) }9 x4 D c% ]. Y19. 一个类的成员函数可以任意被调用( )
, C1 M; i' x1 gA. 错误# `4 K0 o5 R6 p" Q) f- ~
B. 正确
) k0 k ` t$ y; g2 n0 \1 Y* ^ 满分:2 分) N3 D) o2 x: L P! p4 ^
20. 头文件中一般存放着变量和常量的定义、函数的原型以及类的定义。
S- l$ Q# ?7 @) v$ k1 O% mA. 错误
( K b! m/ }& d( xB. 正确
~% ^ n! X2 \' A4 H4 j 满分:2 分
5 ~# V6 O9 t/ z/ P
0 R1 `; |, W9 M; B) P* _三、多选题(共 10 道试题,共 20 分。)V 1. 下面关于指针变量和引用变量的说法正确的是______。
( [2 T4 r( P7 _A. 指针变量存放的是内存地址,并且可以置为0
6 j7 k$ L [$ u1 k/ ~( vB. 定义引用变量时,必须同时指明具体被引用的对象或变量( C& ^7 Q4 d) K' o h6 Z
C. 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
& H* O. Y: q- E2 ^ ZD. 类中的数据成员可以是指针变量,但不能是引用变量4 B! z6 X6 Z% W4 A- l" G
满分:2 分1 ]. Z, T+ l/ p1 y$ L
2. 使用值传递方式将实参传给形参,下列说法不正确的是______。0 a1 q* N& O: R- ?+ w/ F
A. 形参是实参的备份! b; }* A8 P$ t2 x' ~# N4 l, A) r
B. 实参是形参的备份* G/ L9 F5 z+ Q+ g7 I4 p
C. 形参和实参是同一对象
1 m" z* a, ^, D3 YD. 形参和实参无联系
3 t0 v- @" n0 D8 S" Z6 z1 h 满分:2 分
4 G* @; r" ?4 g! z7 w8 v3. 函数调用可以______。5 m6 E$ v: |3 a( m
A. 出现在一个表达式中4 W4 N0 [2 n- Z
B. 出现在执行语句中( l! @% A4 Z$ J! I5 G+ u
C. 作为一个函数的实参" Q7 K! Y- ]* d
D. 作为一个函数的形参' o4 b1 N4 ^, u" K( f8 Y
满分:2 分
3 v% X$ l' j! c1 a9 s; F* A4. 下列说法中错误的是______。
: J- J" _& b& f6 rA. 不允许设置参数的默认值: q9 m q& N' V M: @
B. 设置参数的默认值只能在定义函数时设置
3 U. G# k: t6 DC. 设置参数的默认值时,应该设置右边的参数
5 q+ G, Y8 ~' s3 M O. yD. 设置参数的默认值时,应该全部参数都设置
' J: _% |- x' E: ] 满分:2 分
4 v9 O9 ~6 t* A: U5 v. e5. 以下不正确的描述是______。7 S4 U3 ?% J& J9 K. U) A( C; Z, B
A. 函数的定义可以嵌套,函数的调用不可以嵌套3 V) p, G3 ~% G5 U
B. 函数的定义不可以嵌套,函数的调用可以嵌套9 D5 D" h! J) Z4 L
C. 函数的定义和函数的调用均可以嵌套! Y1 {% {6 g! ~( ]/ h0 {, F
D. 函数的定义和函数的调用均不可以嵌套
; ~0 L2 V" a! r3 d1 U1 I0 V* b! F- d 满分:2 分
7 `9 w- Z, Z7 m+ l. R7 C- v1 g6. 关于异常和C++提供的异常处理机制正确的说法是______。$ K: ~" p1 y5 B: T5 _0 ?
A. 若程序员预见到程序中的异常,则一定可以通过修改程序代码来避免异常出现
, \$ g ^& o0 k8 MB. 使用dynamic_cast操作符可能会产生异常
# }: g/ w8 K2 P4 pC. 异常可以用catch进行捕获处理# L: N: d/ |% S$ G
D. 异常可以是对象,也可以是普通整数4 @# n/ \9 a4 C1 d
满分:2 分+ ?4 W2 L) F9 F: t: v
7. 下列说法中正确的是______。
: H3 b2 k( |+ dA. 在一个函数中,可以有多条return语句
8 g1 S9 P# d/ e, SB. 函数的定义不能嵌套,但函数的调用可以嵌套 M, w) N8 P: x3 B, w
C. 函数必须有返回值$ g/ Y7 H! i" O; l& N( `8 r8 m( p
D. 即使在不同的函数中,也不可以使用相同名字的变量
8 S* f- L: C5 g5 M' l: ~7 k 满分:2 分
! f2 ~, C1 I7 P4 `, y8. 对C++语言和C语言的兼容性,描述不正确的是______。# @& \' y0 t! ?2 A
A. C++兼容C
/ K& M( r5 O" G9 p1 r& T; f+ \4 GB. C++部分兼容C1 O$ B6 Z/ [" q6 s. I5 B
C. C++不兼容C9 v2 R& K3 U* G8 I
D. C兼容C++
7 Z' o0 ?5 c) V$ | 满分:2 分" M0 P' Z0 D' n2 {7 g5 |# E. A
9. 下列关于构造函数的描述中,正确的是______。
) L/ G. Q. b4 r: [ N) Y; MA. 构造函数可以设置默认参数2 p' J! n6 U2 q' m3 g% b
B. 构造函数在定义类对象时自动执行9 e# L5 [) a' x+ ~
C. 构造函数可以是内联函数
# o- q* R. i1 l& m" w0 QD. 构造函数不可以重载
. e) V. w5 S0 K* e5 i s& x 满分:2 分
4 x$ g1 Y# @9 V10. 考虑函数原型void test(int a ,int b=7,char z=’*’),下面的函数调用中,属于合法调用的是______。
P/ u: @( |) q( U' y/ Y1 c) f! w: YA. test(5)
) b, Y/ J! z, F" v' TB. test(5,8)
, x! `, r, l4 ~: TC. test(6,’#’)
$ l" k! k2 v3 f- v4 [0 {D. test(0,0,’*’)
4 ~% N2 T; z! { 满分:2 分
5 y# A8 T" z6 O1 T! {" [8 R3 C0 x y# [6 \$ Y% H
谋学网: www.mouxue.com 主要提供奥鹏辅导资料,奥鹏在线作业辅导资料,奥鹏离线作业辅导资料和奥鹏毕业论文以及其他各远程教育作业代写服务,致力打造中国最专业远程教育辅导社区。 |
|