|
久爱奥鹏网:www.92open.com 3 [8 z8 w1 I2 R& ~$ z2 I8 p
/ h! E* M1 f! }( w" {福建师范大学
1 w5 _! E) d! h0 M$ i5 l福师《C++语言程序设计》在线作业一0 H# e6 Y3 n x4 j4 V. l6 J
单选题! C; f- V9 W3 S
1.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是()。
' P, d) K/ r0 v2 z" u+ [, lA. 友元函数 Q7 g7 Q" S+ g! w$ k A j. ^
B. 虚函数! [3 V. C: l( B$ \" c& f* X' A
C. 构造函数
$ V) J( u# W5 u3 [6 ND. 析构函数1 L% `& K& |$ q% |) u3 d3 O8 p8 O
资料:C
, ?% W/ s6 Y# x! g4 j8 U2.整型变量i定义后赋初值的结果是()。 inti=2.8*6;
$ ]$ u" o# y. h! D# H0 f; E4 sA. 12) w; m2 e3 a- J+ n, G6 i, o H
B. 16 Y% V9 M1 N4 x4 U6 Z) l
C. 17
9 v: ~+ |+ d3 x- ~, k; ^5 bD. 187 o; S, ?; f9 E0 G8 N) e
资料:B
/ g8 A6 a* N. u; B# s! |$ t3.设a=1,b=2,则(a++)+b与a+++b这两个表达式的值分别为()。
) p) Y$ s6 j( }4 K$ G1 sA. 3,3
( r3 B+ b+ B' ^$ |7 H. ~3 l% B# EB. 3,4
5 Z, {1 c ^5 }2 t- z0 P$ pC. 4,3 k* Z# r$ { e/ q
D. 4,4
. y. N% i0 V4 E/ }资料:A
, A. g7 u3 o! E, E3 d4.在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是()。
; v7 A h2 n5 g# {! eA. 一元成员运算符6 `: a3 b- a; _- l- l
B. 二元成员运算符; [. |8 R! i0 v# q0 C
C. 一元友元运算符! s: B3 F: r6 ~" H
D. 都可能
4 y7 V2 y6 |2 ^* X3 q资料:D
* Q# F. K+ V( c5.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()。# F# ]7 X9 Z3 |
A. main, n: g! W, B# P+ V! B4 B& _; a( E
B. MAIN# e# P) ?2 ~* V# g* n, P
C. name6 z( J: Y& h* s' K# s% D2 E9 H
D. function; |% c! \' r( }+ K$ R
资料:A9 Y4 z- c2 V7 U- ?" B ^
6.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为_______。
5 }$ L6 }* Q/ pA. ios::in
" z8 P3 H- B( u1 |1 LB. ios: ut
! e, g4 g( B- b; JC. ios::int | ios: ut/ U2 v* |2 w3 I5 ?+ J
D. 没有2 `+ ~' h: f# F X6 e
资料:D
" H! D+ `) g( U0 a7.函数说明时,下列()项是不必要的。
$ M* C' r1 R: K/ l- {. qA. 函数类型
# e( _! I* C `7 M# SB. 函数参数类型和名字# v$ b. n( C0 G' S$ T% L% ]) ]
C. 函数名字
; h2 U& r. {2 B7 z3 wD. 返回值表达式" u2 Z& E5 r' j
资料:D
& V0 V$ c9 t7 S4 P# F4 c8.4、下列函数参数默认值定义错误的是()。(假定函数f()已经定义)+ |/ P( n' f$ z& @2 j8 q
A. Fun(intx,inty=0)
! D* ^7 m& q- b. cB. Fun(intx=100)2 w* o8 a# U/ a- r
C. Fun(intx=0,inty)
: i1 |' l4 M( @1 Q2 nD. Fun(intx=f())
2 C# L5 w& \) a( d+ O资料:C
1 T5 z. h) c$ M9 C( E% @# D/ Y0 H9.下列( )是正确的语句。
8 r% e( m5 t# `; M e0 ^3 CA. ;! v2 N1 y1 j* v8 i1 [
B. =17% M: R" [7 N, k# B! x
C. x+y- e t7 M J$ {0 K% U2 ?* v
D. out<<"\n"* R' w: l; L9 {% h4 u
资料:A" x$ d/ m' W4 `- [$ H
10.下列do-while循环的循环次数是: 已知:int i=5 do{ cout<<i--<<endl i-- }while (i!=0)
% o; u3 j5 Y& s; qA. 0
0 x% f( J. x: o7 g- [+ O! x+ [# hB. 2
2 Y( a |5 o t0 o; h+ R+ P+ @C. 5
5 D: B+ S2 _/ ~. h a/ d' aD. 无限次1 @$ N S" g4 K, v, y1 F5 ~1 i
资料:D
' X! R! J3 g: u$ |2 t11.以下哪个不是循环语句( )
, B! ^# s. e; C/ A0 d2 A4 L% i* u, tA. while语句
+ C1 p! ~( `9 H% LB. do-while语句& l1 ?, a+ `/ |. o4 y g6 v
C. for语句
+ \1 V, l- b4 s q5 ?, sD. if-else语句
2 {; }6 B0 }, Z. M5 ?0 K7 G3 P* @资料:
, I* k- }6 K0 {3 s8 S, Y4 ?$ ]4 z r12.若x,y,z均被定义为整数,则下列表达式终能正确表达代数式1/(x*y*z)的是( ): u$ i( N. }* ?; D
A. 1/x*y*z @# B6 j' f5 V6 Z4 [' m' G
B. 1.0/(x*y*z)
2 ~( k Q. V6 l) f9 g6 S! xC. 1/(x*y*z)
* x4 ? U( ?5 n7 bD. 1/x/y/(float)z
, j& g% L4 [: Q3 @3 x* R; J) Z资料:
) d8 X. L4 w8 I1 B13.不能作为重载函数的调用的依据是_________。
K: I* y3 d; d3 `' P4 AA. 参数个数. E {, T: b6 y6 g w8 i
B. 参数类型+ B' J8 O: B [
C. 函数类型
/ Q9 @5 o, X8 Q' S8 A, r& K) RD. 函数名称
7 g# w/ ~0 t0 D V/ c; U, _资料:# m* s8 |! Z3 O, Q" s w- B
14.下列哪项不是面向对象程序设计的主要特征( )
6 }* g& K! y) _( nA. 封装
. J# c3 q+ @+ \( W3 F( ^B. 继承/ w3 Y6 V* ^* l; \8 v+ [' U
C. 多态
; q7 c' p: R! V# P4 ^D. 结构" K" ?6 \+ w: S1 X% P
资料:
3 D5 V9 d1 ~% |: y' q: A; a15.下列关于虚基类的描述,错误的是()。* @ ]" ~ d @, n. K" J1 ?
A. 设置虚基类的目的是为了消除二义性, ~0 K; M) e* K( v1 g2 b
B. 虚基类的构造函数在非虚基类之后调用
$ \- S+ @" k8 c& g1 I3 SC. 若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用. c. i$ t% d+ N
D. 若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数# a* Z( J0 p' ~+ t. z! n
资料:7 v" r5 ^ X- O/ e
16.如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是()。- m/ E# K, _: x0 r- o7 o
A. 一元运算符
" k4 J2 I+ z* m1 w, A" M' OB. 二元运算符! d% ~9 r/ Z& A% e( r
C. 选项和选项; a7 P& v+ d# [# V$ E7 I7 \
D. 都可能
- {" P( A9 U% }2 kE. 重载错误
5 X( C' E9 ^ W9 H9 \; ~资料:
) [/ ^' M6 F- K17.在C++语言中,二维数组元素在内存中的存放顺序是( )6 ?0 a! T; U v
A. 按行存放
& {; ]( {! }! ]5 ?! T4 P% QB. 按列存放
0 N4 F7 J3 c) {+ p$ X- cC. 由用户自己定义! O/ a- X' B! H9 z
D. 由编译器决定: f, P/ v$ \. L ]: A. w
资料:% q: t* P, _/ ~& D) `2 ^
18.将小写字母n赋值给字符变量one_char,正确的操作是()。
" e! H8 n3 p* u! |* x6 {" Z+ vA. one_char=‘\n’; v4 F$ o, |2 c4 }+ r, a" @! `
B. one_char=“n”;* Z/ p+ p+ K& U0 k4 Y: E- U( k
C. one_char=110;
- `; R: o+ h* v oD. one_char=‘N’;. P$ H! Q& c3 x) f; R. c: j$ S
资料:; v8 H% i. x4 @! J
19.算法的时间复杂度是指_________。
, ^! y2 n, G1 m# @A. 执行算法程序所需要的时间
: A0 D3 k* x6 T2 y8 _7 w+ q6 iB. 算法程序的长度
7 b8 o S& A( g6 ~0 f2 o+ qC. 算法执行过程中所需要的基本运算次数
5 \2 D. e. F( E" f; u4 e, xD. 算法程序中的指令条数
3 I9 L0 i7 O* Q& c资料:
1 a. S7 C- p0 x20.在函数定义前加上关键字”inline”,表示该函数被定义为()。
& W) C9 U; g& [! pA. 重载函数$ H6 X! i, I) L, H5 `6 ^& i
B. 内联函数
2 W+ U! ^# t8 N2 s2 xC. 成员函数! z" L" t( A% \1 u2 I6 A
D. 普通函数
' n6 {* W8 e! X: J资料:% l" k+ Y4 _! V& _! A$ p4 ?* C; _
多选题
$ ], D9 T3 v. D& C, l7 X0 T( |6 G1.下面描述中,表达正确的是______。
* _" V4 {$ w' L+ N/ n' WA. 公有继承时基类中的public成员在派生类中仍是public的3 h) w4 x$ y3 {# A* Z) c4 m- f. B
B. 公有继承时基类中的private成员在派生类中是public的% Y: M! L- ^& }; j8 v' y6 H3 y; F$ C
C. 公有继承时基类中的protected成员在派生类中仍是protected的 c) ]) Q# |8 y- Y1 j1 N3 w
D. 私有继承时基类中的public成员在派生类中是private的
; G, T2 |. T: X% |/ d资料:
( i' P7 P6 x* |& B5 C2.下列哪种函数不可以是虚的______。4 @# _; q. F# V7 l- i
A. 自定义的构造函数
' I8 V/ B. H* d3 yB. 拷贝构造函数
& m8 ]2 V: O5 i% f# o7 y. |C. 静态成员函数; F1 H K6 w3 ?
D. 析构函数
7 a S3 |; u+ e7 T; }2 `. w资料:/ v, ^ g0 U a" U' [- U q" L
3.在进行完成任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中不能用于检测输入流状态的操作函数名称是______。
. I L% G- _/ Y+ n/ DA. fail
: V L: k7 ]# ~B. eof& R4 p5 U" Q- S3 b* E9 J; q/ t
C. bad
2 \2 r Q$ h; p; KD. good
8 A' z+ i! R6 o2 g% t资料:
0 F9 H& r: Q1 |$ K* M [4.下列说法中正确的是______。7 N* n5 U* t$ G# L- R, k
A. 在一个函数中,可以有多条return语句 t9 a3 ^, U! w4 S" L' }
B. 函数的定义不能嵌套,但函数的调用可以嵌套6 d$ p- _. u+ K3 d
C. 函数必须有返回值
7 T4 j3 x( v4 A( o6 TD. 即使在不同的函数中,也不可以使用相同名字的变量
* q: g' M$ E; R0 D& m资料:
! w) W3 h) p! A# N5.使用值传递方式将实参传给形参,下列说法不正确的是______。
/ `8 _/ Y& m# u, n7 \% ~A. 形参是实参的备份
! ]5 x: Q* ]- |3 J+ K: I$ h3 VB. 实参是形参的备份
, n7 ?8 |8 ~* ~! y9 Q' i: XC. 形参和实参是同一对象# t6 R! {* r" ^: l' }$ g @) |
D. 形参和实参无联系
2 b6 _( H+ s2 a. |% d资料:
" N7 r8 ~; Q- f. m6 T2 d6.关于函数重载,下列描述错误的是______。# C j7 v9 C% m7 F0 }9 P
A. 函数重载是指两个或两个以上的函数取相同的函数名,但形参的个数或类型不同2 D8 {) F, `5 e' g6 y
B. 函数重载是指两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
s" o4 K: z( ^* ~. }C. 函数重载是指两个以上的函数名字不同,但形参的个数或类型相同% M( D' T5 f$ h" F& d: |0 x
D. 函数重载是指两个以上的函数取相同的函数名,并且函数的返回类型相同" v5 I9 J2 b' j; I% K
资料:
- L5 A- o1 u+ |& R4 v) }7.对C++语言和C语言的兼容性,描述不正确的是______。 ~0 s& L% G# m: P3 S7 J1 N P0 p
A. C++兼容C( M3 [, F6 E" Q) R; w
B. C++部分兼容C8 _( c: t% o3 s4 c% t# e) K* t! q
C. C++不兼容C
2 T" z, W. O3 ` a4 O6 ^5 }. qD. C兼容C++
4 o% |. z- ^+ P1 e资料:
$ j7 N4 R* u! G8.下列说法中错误的是______。) M; J( t! ]- M. k
A. C++程序总是从第一个定义的函数开始执行% O% o' C- E ~/ V$ m; W% ]# e
B. C++程序总是从main函数开始执行
2 {5 T ~; @$ T3 BC. C++函数必须有返回值,否则不能使用函数
* F9 M9 s9 o% @D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
$ |" B. R; o4 z$ K资料:
% e6 @+ Z$ d; u4 w% W9.在下面的一维数组定义中,没有语法错误的是______。' b& I" r# J/ f1 T( i! R `
A. int a[ ]={1,2,3}8 o/ z+ f2 A8 {! X7 u
B. int a[10]={0}5 d# `# \7 v9 y! }- w" y
C. int a[ ]
3 r+ P" D o# N2 Y1 |# yD. int a[5]
9 `- [ d8 c% a/ A资料:. ~7 T r- Q# a4 `8 l
10.以下关于函数模板叙述错误的是______。8 @, z+ N- N! \( w" X: c5 O
A. 函数模板也是一个具体类型的函数. ?- X1 ^/ g( {, B, p1 b8 m
B. 函数模板的类型参数与函数的参数是同一个概念& W8 v2 p8 \& c K4 o1 h
C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数
8 `. _. Q3 `* r' B4 jD. 用函数模板定义的函数没有类型
4 z" J T6 E( x8 l' m* K资料:
8 ^* j% I& N2 X8 I Y$ i判断题, E% Y2 X$ F4 I* g- o Q
1.NULL是空指针值,它不指向任何地方。( )
' W' M+ u5 [$ N" a; d2 \$ \- @A. 错误
{- Y! ~1 }+ J# W/ L" iB. 正确) H8 \8 A3 U+ r8 @8 k+ Q1 p8 e
资料:* e, O, h- v8 f" B
2.基类中被说明为protected和private的成员只能被其派生类的成员函数访问,不能被其它的函数访问。* K% t8 \' A/ K2 i( U
A. 错误
( _5 ]( z @4 b6 ~. @8 n0 tB. 正确# m7 f# F: q2 l( \7 S7 m' [' o- N0 `) g
资料:
3 D9 e) }7 [' {3.指针在使用前可以不进行初始化( ), ]& [' C. R# X
A. 错误
5 I# p' [- f$ r! n5 {! b! bB. 正确
, E0 O- Q7 G6 ^) \2 P' v& l资料:
8 l0 u% {1 A. ^* h4.在内存中,字符数据以ASCII码存储,即以整数表示。( )0 V0 S/ W7 E+ |, N
A. 错误
, N5 p5 D1 G6 j. }! v/ b/ [B. 正确2 R; U$ ~. K* ^- {5 F( _; y v
资料:4 y2 U' s* D2 Y9 y0 U
5.左值是能出现在赋值表达式左边的表达式。( )
! \* [* k% V9 s9 J* t2 GA. 错误) A1 S: p8 e6 j- e: H H* `
B. 正确( u% |5 u! x: P+ r' s5 d
资料:" q9 D: H2 u; l( @$ M" B
6.要在屏幕上显示"Hello,world!"应执行语句cout<< "\"Hello,world!\""。
& J+ d, H% R& l! c$ G) AA. 错误
. I! ^9 `1 [/ _0 a; {/ K" FB. 正确
r( ]7 o" i' m# \& j$ I0 F资料:4 U8 C; g9 [; O2 l& Y- m
7.要使引用pr代表变量char * p;,则pr应初始化为 char ** &pr=p;
/ _2 I! n4 u3 J; k. V, ]A. 错误
: K6 t9 j- P8 ~1 t1 qB. 正确4 _$ ~( N9 C5 b1 j
资料:
( Q' o3 |/ J# f8.用new动态申请的内存是在堆中分配的,而不是在栈中分配的。( )
( h$ d l- }1 X: F8 IA. 错误2 G1 ]# d) {/ E$ Y. e! D
B. 正确
. i6 W1 T, G' N) g资料:2 Z9 h9 a$ v8 f- v, f
9.用一个标识符代表一个常量的称为符号常量,符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。( )
0 ~; g& T6 Q) ]; h d: k+ _A. 错误
7 N, [7 h% H9 n: a5 q8 G! B0 MB. 正确. E9 ^; u( H! E. m, U4 q" S3 n6 h
资料:
& `% R* l: @: H10.类的友元函数可以直接访问该类的所有成员。( )0 n: r- |% k; z6 Z9 B* N4 i
A. 错误, U9 b& G+ H. V) D! ]: x) M% U2 ]
B. 正确 k: Y* m* q% X, h ^7 J
资料:& ?( ~! _4 X2 k
11.析构函数必须由用户定义。8 M9 W& X. Q: B. M; O9 p4 j
A. 错误
, g! Y. l& J& m/ q" }# } u7 |B. 正确2 e' j1 V* @4 r8 x) v5 w n
资料:2 w: ]: O, _" w$ {: f4 n- u& ]2 g
12.派生类的成员一般分为两部分,一部分是从基类继承的成员,另一部分是自己定义的新成员。# m5 X' T- _. k. }+ I+ P7 U0 S: Y& h1 P
A. 错误
- O0 N! d( N# x8 E: M: \) `3 I& PB. 正确
5 ^, v( f# t8 y4 }: M资料:
; ^' Z9 y! a) M" j4 f13.在基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问。: H& \ C$ v0 F( o, ^
A. 错误
& {& F! B/ L+ WB. 正确
# r c; W! ]* d m资料:: j5 l+ H4 N3 T7 |( m/ @9 D) l
14.变量必须先定义,后使用。: n, I+ y4 d) o7 v2 w/ Y& W* M) S B4 k
A. 错误
9 B: w8 V+ _- S8 l, {6 M0 YB. 正确
; I+ F/ M* {) E/ X3 d资料:) P- x7 e+ [! A0 o$ Y
15.在一个函数内的复合语句中定义的变量在本函数范围内有效。( )# m$ a: b1 a3 W4 h6 A1 ?
A. 错误
+ m i3 R' _* N9 T3 I nB. 正确
4 w" @# y, l- T+ u: r资料:
7 H* P5 v4 B7 U# C) M- ~16.声明一个结构并不分配内存,内存分配发生在定义这个新数据类型的变量中。( )
) g6 J! S0 A+ p" X4 s1 yA. 错误* P; D$ ^. a( |
B. 正确6 X# j1 p# m. B5 U% |7 p) R: X
资料:; Y0 x6 F0 @ O- _; {1 M* k
17.类模板的使用实际士:是将类模板实例化成一个具体的类。% K' T1 ^# P/ u; ^ d2 S$ }& P
A. 错误; T8 K' A: l" O
B. 正确9 ^3 u" G5 |1 i+ R. s
资料:2 y! Z" `. S2 G- |% ~3 o9 k
18.构造函数不能重载。
2 W5 r V" _$ g8 y1 D% WA. 错误# u0 {/ |0 z4 Q4 o' @ B
B. 正确 [7 p6 g& G6 s* H7 p0 O( T
资料:
4 j7 z5 V. S) }2 ]' Y19.NULL是空指针值,它不指向任何地方。( )
3 Y, ]1 L- V5 OA. 错误7 s v9 T# j: H! t; J
B. 正确
6 ?5 d7 w$ n$ D6 ~9 e H资料:
C: h% [7 a6 h( [; i* O20.C语言程序总是从主函数开始执行,在主函数结束。( ); L" Y& y6 x) m R% t
A. 错误
+ |% V( }4 R- L3 T3 I4 {B. 正确
% U; ~+ C/ u" a* ]# ]资料:
* A+ J+ m" }$ n: W. `: u, _) ^- K1 E" Q! f' j3 T! b1 W
1 ]9 i2 n3 k% {7 ?, ^久爱奥鹏网:www.92open.com |
|