|
资料来源:谋学网(www.mouxue.com)面向对象程序设计2261-[四川大学]《面向对象程序设计2261》21春在线作业2" e* l$ c9 C/ x* t# x, _
试卷总分:100 得分:1003 @7 U- Y0 n6 R' K$ \0 \
第1题,private访问属性限制对象的成员可以在()中访问8 M$ I4 Q8 N! j, n( j
A、本类的成员函数
) I3 f7 `9 T1 s& ]B、main函数/ c2 {' `8 k$ E# w, L
C、父类的成员函数
/ @3 z2 q3 w6 G& }" P1 DD、子类的成员函数3 {( n( f0 B% ^- n
正确资料:
4 L6 b* @3 }% G4 D2 O0 \# l- T# a% f7 Z7 `( H
! g# b4 O6 R8 i$ z
第2题,在定义inta[3][4][2];后,第10个元素是() h7 B- I. g0 U2 t
A、a[2][1][2]5 f, `! j5 ^9 x7 C% }, V" y. U
B、a[1][0][1], N3 N) J* Y' w5 C- `* V
C、a[2][0][1]- P/ p: E, T2 K" I& |
D、a[2][2][1]* V* x% \( i0 n! r: I
正确资料:* R5 a- Q% k) @3 [1 w9 d/ T
' l- ^- k* M/ n) O+ h+ y1 I6 J
% ~, ?" P6 U E
第3题,在每个C++程序中都必须包含有这样一个函数,该函数的名称为()
1 Q! c# Q# b W3 B/ k! ^A、main4 R# [ V5 L8 d! F% U8 T$ e9 o0 J7 p
B、MAIN! F2 X/ K0 f1 T
C、name
- h0 }9 g8 h4 l5 B. BD、function
* o7 S2 E; c+ ~: H% R. I8 {, n正确资料:
% U( m, I! B9 x- G4 W/ m1 X# q- s2 u1 Y7 u
2 E+ O4 i4 R2 @' y% i3 S E
第4题,数组名作为实参传递给形参时,数组名被处理为该数组的()- U( H: d @. U* U5 q
A、长度6 L4 Z6 t" t. T- e
B、元素个数
; W8 w9 S, b: I: A: k+ |4 \( VC、首地址6 f" m5 i; O# i3 z& n& q
D、各元素的值
" A+ \. l# t1 `+ r正确资料:
3 l0 f9 w/ t/ l/ I! s2 H# y/ B! _& y% L. c" G, T1 _0 z/ j
! s7 I& A/ |! A6 A8 v
资料来源:谋学网(www.mouxue.com),C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是(): d1 e0 z) [% U# r
A、增加了一些新的运算符
" t$ {# g# g( a. AB、允许函数重载,并允许设置缺省参数
. z( d( t# [+ v) pC、规定函数说明符必须用原型
1 c4 U5 F& e E2 ?* c& @; ?* BD、引进了类和对象的概念
I2 d9 ^! C, |4 c% l! u4 a; T正确资料:
& n6 ] K- c" e! [, V, d% x/ P7 a5 @4 e( @
K) ^" b) S1 m/ l$ v$ F0 J第6题,以下对二维数组a的正确说明是:()% k: l, ?1 ~. ^9 }4 M" R, a( b" F* n
A、inta[3][];
) D p+ w" T4 O# {3 S! eB、floata(3,4);
0 S0 R' c2 w" K0 eC、doublea[1][4];3 J B, c4 s9 I9 t
D、floata(3)(4);
) X4 I4 g1 R+ z- y, d( n# ]6 J6 L正确资料:0 t) b( r t) @3 T$ K3 E
$ B6 j R" w/ A4 g/ Z6 h. U& s# A
: a2 k1 t$ M- Q% Y* |7 D6 D
第7题,二进制数00001001跟01000011异或的结果为()
. A3 a" Q9 X6 ]6 d3 u8 [+ \6 fA、01001011: W9 O% b" p7 \2 l$ d/ T1 Q
B、00000001
% [; L2 z, D1 X$ f3 D: q/ V& PC、01001010; S; k/ l* O* m5 `# L8 f
D、01001100
1 J( p, \, }2 n2 }9 V v' x正确资料:9 Y! }+ h' R; z" _( J
& x5 P G M" [+ ~
! c0 ? y" E0 |/ _5 E$ n1 O
第8题,多重继承时,如果派生类的两个父类有一个共同的虚基类,那么虚基类的初始化参数由()的构造函数来传递
3 d* z1 {3 I% u2 ]8 m6 E& KA、第一个父类# s9 E" b7 h" O; F5 u% y9 ^
B、第二个父类
4 V# I0 h4 R( _3 X8 sC、派生类
# f8 I4 m# u+ x( Z7 P3 H) ~D、以上都不是7 f$ }* f9 L/ g( L- L
正确资料:
0 O8 o& Y, K: Q" z: h3 `" U5 o) M5 Z* N
+ \9 G) h; L5 p: K2 j
第9题,判断一个ofstream类对象file打开文件是否失败,应该判断()
+ t' I, x8 c6 B6 G5 r. ]A、创建文件流对象时是否抛出异常
% |2 P: W: l6 l- Q( B) {) ~B、open成员函数的返回值
8 j* P) Z z+ `+ K: LC、feof成员函数的返回值
2 s# M3 N. ]+ b/ h# xD、!file是否为真
- }/ {0 ]- E4 Q- A正确资料:2 ]4 E3 }% B2 }8 y- y4 M/ ]
. ~0 O5 g, h* E& t5 i4 w
7 J* c' ~9 E1 `$ }0 E0 w7 y+ ^+ b7 n资料来源:谋学网(www.mouxue.com),下列哪个是C++语言的有效标识符?()) t$ o. ?4 Y; O* D. Q( Z
A、_No1
6 A- m& z6 a* O+ S8 ^B、No、1
. C) h; z3 x1 o. cC、12345& P) g+ [+ h* _2 O i
D、int5 z* y* T f/ ?2 ]
正确资料:+ K0 V5 |1 b6 I/ n7 T& N
, \0 M9 b& I$ p" t& q6 k- n$ I9 D. m4 a
第11题,如果短整型的长度是2字节,有一个短整型指针p的值是0xFFED1200,那么p+1的值为()# E; }; @. B& h! L2 T
A、0xFFED12014 Z7 ?8 d( w& Y1 T( F& l7 l
B、0xFFED1202
+ K+ N/ M4 I& g* xC、0xFFED1203; {# o: M4 J# L# T6 w
D、0xFFED1204
7 v9 D; u3 w% C t( j( F* X正确资料:: V( o# U/ h- B- v" k$ _6 i
: E ?( q* {) Q! d" }
; r. h9 |' F: r% b9 [( l7 n0 N: |资料来源:谋学网(www.mouxue.com),若已定义inta=5;下面对(1),(2)两个语句正确理解的是()(1)int*p=&a;(2)*p=a;: h& J" t- ?# ]& f$ h
A、(1)(2)中的*P含义相同,都表示给指针变量P附值& i6 F2 J+ \& R0 Q* A
B、(1)(2)的执行结果都是把变量a的地址值赋给指针变量P
% i, ~5 ` O; |! WC、(1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给指针变量P9 L+ a/ m3 Z5 n
D、(1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给*P6 H( N2 M$ ~5 t* G; G+ M
正确资料:
; N. } p0 l( v x' g! j0 Z/ z; F$ [0 P* k0 ] w" M2 o, I3 _
% ]5 }- p6 Z: k% |' ^$ a
第13题,下面不支持下标操作的容器是()
% z6 u- a; N0 c# LA、vector
& \! A1 H% [" Y G. zB、deque
* m7 z$ ~5 d6 n& SC、list
8 l4 p& ]/ V( O8 }D、map, j1 R: o" W5 _+ d6 h
正确资料:( M3 q$ b& c# a& }, t+ p P9 L
* j9 V5 \: e( z+ H0 u* R5 k
( W( X% {5 K% y- S( g G! Z第14题,抽象类指的是()
1 ~- ]# E* ~0 m% wA、没有任何成员的类
# v" F! Z7 M f3 oB、只有成员函数没有数据成员的类
. K# q: V4 Q' b& y' h( |C、有虚函数的类6 h. }; Y7 w. |3 V
D、有纯虚函数的类
* k& L+ \1 T# S+ ~& c# Z正确资料:
8 F- k0 d! u+ g6 g# p) a! G4 j
- K: C" w; o. F% _! X: {" ~& o' f) L" e/ K: k, k
资料来源:谋学网(www.mouxue.com),执行语句
Z: f* O6 F5 l! ~2 k6 R% H/ s3 _: pchar ch[] = "Hello";: i* T# `" J8 e4 _
char * p = &ch[0];
5 V5 ?5 q" U) @cout*p
~; r0 ]7 c T3 f结果是输出 ( )。. I7 b/ |: t( s# v. ]
A、一个地址/ x; a' C1 Q+ H0 Z G$ q' b
B、H" N1 J9 C- r9 {5 C( p" {5 w5 e
C、Hello" }4 w. i' ~3 r
D、乱码
]1 Y7 w: f5 m$ S% Y- ~, i2 ^" O& f) Q正确资料:
) a1 r) M4 Z; r5 `9 }8 p/ Q* t& l" K( |( S' S# f
- q" }; F: }) c6 c8 B
第16题,队列的最大特征是()- o- k7 q b& O( D9 i; \
A、先进先出5 {" u$ |( ~/ R- `2 Z) m
B、后进先出
. R3 e! g) H/ J/ U- O& hC、自动排序8 L6 C) `6 r3 k. x
D、大数优先/ M+ F" w/ u% m6 {! @2 P& ~: a
正确资料:
* m; I' Y# M* j1 X
6 b) H6 }6 s$ ]8 s9 D& G8 g
& [, I) k* W8 I3 o2 l. P4 e V第17题,已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是()7 d- X Q4 a! w% e; w) R
A、Valueoperator+(Valuev,inti);5 r% \4 ]4 K1 ^% B: v
B、Valueoperator+(Valuev=value,inti);) v: \- [/ m+ c8 Y) Y
C、Valueoperator+(Valuevinti=0);' y1 S5 m" U# H" A% z- X$ s
D、Valueoperator+(Valuev=value,inti=0);
3 d5 k) p/ u( ^( M, f2 _正确资料:! T0 Q# }( Y3 p# Q+ @
2 B: {' m! B! k! Z' \4 q0 {
, u$ ~3 `9 s i: { I
第18题,如果有如下定义:constchar*str="OK";那么,sizeof(str)的值应该是()
8 x2 {1 w, F3 \9 @A、1" i8 ^! R+ O4 Q/ ^( @1 d+ i
B、2
* M) C4 s7 f8 w8 p6 L' @4 yC、34 S4 {, D' m3 @0 J# A$ L& c
D、40 H' @( k/ i1 L h* L
正确资料:6 d, a0 A) W2 z" R7 J( X
3 p% ?' ` `. A1 @, l9 w/ D# G. ]) C0 F v. U
第19题,如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclassobj=100;会( )
% E8 j" G2 b, PA、调用拷贝构造函数
5 `% x2 t* p- G0 qB、调用整型参数的构造函数
3 C& `8 Q) x: j |5 Y% x9 @C、调用赋值运算符2 m+ u( A/ [ y
D、引起编译错误# U& J3 H$ d# p7 P3 b$ O
正确资料:
! F6 n. A3 D7 }' v: N& E) m& V& B* D0 @8 K1 }
: W& Y- r+ E$ x7 b( s, ]- m2 E资料来源:谋学网(www.mouxue.com),二叉查找树按()遍历时访问到节点的数据是排好序的
' `" |/ b$ R& }; `( N E0 sA、前序
6 d1 y! M( Y( B) M) E" CB、中序* R7 N1 ]. S3 B& H, n
C、后序9 m# |% v& X8 u Q$ b, x
D、层次
) ?: N6 E L" p4 U( ]6 H正确资料:
! e1 [7 ]" p9 G! ~' n2 g/ Q" [5 ^
' ?1 D2 i4 ?5 J# B. F) e# q- P/ E# Q
7 {+ Y& z( o" j, w, F3 C8 L第21题,一个类如果没有定义任何函数,编译器不会自动为这个类产生()
1 N3 ]$ O% D0 p7 L7 r9 Y( P& aA、拷贝构造函数
* `& D4 M7 G1 P2 h8 H" ]& ]B、无参构造函数6 A7 ?+ R l9 f
C、输出流运算符
" k! _5 J% K# Q3 ZD、赋值运算符
+ b9 t f% b/ C/ k, w9 r正确资料:
3 W! G; z# o; k) O3 X+ i4 h- a. A) P" R# J! c2 @ z
9 b" t3 L* R$ n& L; k0 z8 x3 w- R第22题,如果在try块中用throw"error";语句抛出一个异常,则参数类型是()的catch块能够捕获这个异常。/ s3 k* G, M& R; x
A、char*
& N3 I3 U9 i ~( [' t. gB、constchar*
! q! F, |. w' w0 OC、Char* x4 W% }6 d! r L- r
D、constchar
M' B X! {6 T, w2 h7 i正确资料:
- \' _1 w9 U1 ~! O; p7 s; C+ V
6 x/ h9 K) j0 C1 @% W* U3 i
+ |$ B) O8 l9 k第23题,下列排序算法中,平均效率最低的排序算法是()6 N8 G0 X. j& \" _4 y$ B( g/ g
A、插入法1 }8 O, I& Y. T1 r$ F2 J. r
B、冒泡法# X% D; l& N- G' f1 ^$ Q( d
C、选择法
. i8 E- m( J0 _6 ?! F* i" GD、快速排序法
# a. c5 A L# A: ^正确资料:
2 p8 P$ D; F* L: r/ J% n* p$ f( O/ O' ~# j$ V$ [# r, g Z- }( s; ~' L
1 X1 @( x$ g3 T, l: a: E G
第24题,如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算符的声明应该为()
, F" p0 c- v9 r, \/ \$ HA、myclassoperator++();5 s, u7 B4 j. o0 {1 [2 I3 i. J$ v2 v
B、myclass& operator++();
6 E- L, m' @: u9 yC、myclassoperator++(int);
' s' |6 N, l3 B* r) a) UD、myclass& operator++(int);
7 D& ^9 W2 ] X$ X2 Z% ~正确资料:
) [4 A- Z# E0 z+ F
; C$ ? ^% U" c- y0 y9 K- W- _, G
! s7 C3 ? s) o3 T资料来源:谋学网(www.mouxue.com),执行下列语句段后,输出字符"*"的个数是()for(inti=50;i1;I-=2)cout~*~;. f# ? e2 U, m. N4 I
A、24! m( ]+ v8 z+ d8 f
B、25, X2 j7 D* k8 V3 l) Y4 w
C、26+ J" @8 \; x' [4 z E+ {: m, ~, P0 x
D、50
2 l' Z0 |0 v+ Q2 c7 D7 |正确资料:
6 b: m2 t- a _( ~+ S" H0 I _$ F
7 |. B6 }) J! P
: W+ N" p" J& @, T. \; h第26题,C++泛型编程通过()实现* b( L d2 r6 L0 F
A、void
4 ]7 _/ }! ^& H6 z3 w3 DB、template
8 M8 B% B2 j& \6 Y$ q6 \) c% AC、NULL( {$ a2 S# {+ m- R- V1 W- S
D、typedef
) z2 X7 s7 ~6 L4 w. _8 q正确资料:# _: F: U: j3 \' U
) `8 x) \/ e; y9 w5 O+ f8 a) a' k+ Y! I# F* d
第27题,已知函数 f 的原型是 void f(int *a, long & b);,变量 v1、v2 的定义是:
/ {; ?0 S" U! X: U$ nint v1; loong v2;0 V Y1 A8 z# p4 f* [& h
下列调用语句中正确的是 ( )
; C1 z3 s( G) JA、f(v1,&v2)0 W3 L/ [3 S1 `0 @1 c
B、f(v1,v2)
& y @: x H+ xC、f(&v1,&v2)
( ~( j- V/ l2 RD、f(&v1,v2)
- J+ a: Y7 o6 G: q: T- ^正确资料:
; q3 M4 X/ q+ v/ }( y
: m7 I) c; X3 B$ J: B* z4 L
! H* `# A' n; T" w- {. @4 d第28题,下面函数调用语句含有实参的个数为: ( ): V( N! Z5 v( b: B( M# C
func((exp1,exp2),(exp3,exp4,exp5)) r, Y' Z J, K& L, y& n
A、1/ h, @$ V1 M" q1 l% P+ v+ u" j5 |
B、2
+ |9 N! A' M# dC、4
; O: G# b% j3 QD、5$ V1 q2 z! e; W
正确资料:
/ g1 M# E8 k: v+ U% O4 z( u) v# N' r2 H# }) k* w& h
! G# x$ H o# i% t3 G0 V8 @9 T* w第29题,若k为整形,则while循环执行( )次。 h0 \+ V+ h& T& b$ w
k=2; while(k==0) printf("%d",k); k--; printf("\n");. t2 D0 q3 o/ I
A、10/ k0 h n7 u" C2 W* u C
B、9! |4 K- C" r* t" r
C、0
2 V7 G5 d" E& q" p: P6 f2 Z6 z6 zD、1
1 ]& z) ]* q3 n/ w5 R$ w( X' I6 \& I正确资料:- ~+ |+ o. e; ]. S- I7 W1 O& }
& S+ M# d5 e( ~4 n! D
2 j( D2 C- D8 i, m, d6 e H
资料来源:谋学网(www.mouxue.com),C++异常处理机制中没有()4 a) s; \1 _# I+ U
A、try
# n+ m' O; ?% ^" jB、throw
2 s# t) k7 @: h3 c9 w9 O- AC、catch
; C$ e9 x1 O) b( ~" c9 U9 n3 C: r5 F+ {D、finally& f+ d% K8 y! ?1 w# c+ N
正确资料:+ l: `# t5 s, i: u
& ^0 X& I& C+ T3 Z: Q( ?
9 ^% C- x3 e% Y U6 |# s第31题,两个同名函数构成重载关系,只要()不同
' Z7 A4 s3 M- VA、返回类型
" ], \( k- {* j W% pB、参数个数
B2 r) ^' e% hC、参数类型
6 Y/ G1 b9 }3 [* v; E: [3 dD、函数头后有无const
8 b/ O5 L* x; e P1 d" n& j' q正确资料:,C,D
; i! }2 [: ~- L7 n* Q8 ^% @4 B" I( a% s% a" M
3 W8 D( I* _1 R; v0 K- v
第32题,构造函数()
5 q4 o0 b7 v" l7 i$ ^" ?, ^. CA、函数名只能是类名
2 U' ~6 Y1 f5 R& S+ r" @B、返回类型可以是任意的+ Y- m" @3 p( A' Q6 O' r
C、参数个数和类型可以是任意的
7 E& V8 |( N! M1 |& P1 G; \1 e2 C, P/ W5 kD、在对象创建时自动调用. |1 e# U( {2 r* p$ ` f
正确资料:,C,D
" W0 G% w0 Z0 A! v2 E
$ R) g! U- r& f& a1 s" s# P" \# |8 L1 @& v1 i3 A8 ]8 c: Q3 I
第33题,关于公共静态数据成员,下面说法正确的是()9 z3 X( P# K: x* C8 E. _
A、在main函数之前创建0 n+ x# U& y0 H" p- V* O
B、跟某个具体对象无关9 r, ?/ @3 r1 i' u$ p* n: g: o
C、可以用类名和成员名直接访问
7 t7 T* a# r# B1 ?D、需要在类体外初始化
4 \2 B9 m' Z0 f1 ?9 y3 \正确资料:,B,C,D1 a& N+ `$ `, U7 }- d. c! r
) U3 _/ t# O( t1 s
9 J3 D/ L p6 g( H$ ]5 J2 N
第34题,流程控制语句有()几种
# _/ N9 _$ `. G( H w5 t* SA、条件语句
d. g# m" V' a& r" ^# B1 G6 zB、循环语句
7 W; w, q- a2 RC、分支语句: H; `- M0 i" c0 p$ ]3 A. X
D、表达式语句
6 `& P5 A2 L, _& x3 _" h0 ~' x2 x正确资料:,B,C
" k+ }9 n7 J$ E- H* v7 {1 c# E5 n8 A
& O& S* t4 P1 O7 A' T$ r1 p J第35题,模板定义中的类型参数可以用作()& j" V4 f) A0 E/ u: S) `& j1 s
A、局部变量类型) s& J0 G7 ]' _$ v* b
B、函数参数类型
) w$ G V" H* Z* q, V( QC、函数返回值类型
c Q. t; c/ i" I$ G( W9 `D、数据成员类型
! \5 f1 q2 l) P: m2 H7 j% [正确资料:,B,C,D- Y" L3 L8 u* O" o$ T: q0 n( j4 u
4 Z% i& j2 @* v- f, d' s% k+ e9 w) M
- {7 G& E) `; A! k0 K第36题,_int可以定义为用户标识符。()0 {+ [1 x* U4 z3 e+ Z
A、错误
+ a+ M) V8 R8 S6 o. e8 @9 \' pB、正确
% S/ ? Q6 ^( A6 A正确资料:
, C( V" i& X( q& b: p) m" D d7 `4 ^
1 g/ H* |( Z L$ Q+ k# P- |8 E第37题,字符串"ab\\\n"在机器中占6个字节。(): ~* h9 Q. O6 ]6 E: T
A、错误2 Q' \+ B6 s2 R
B、正确
$ ^- |& Z7 r) K4 r正确资料:
! x7 Y. a" I# a
: M0 S+ l' \# i; D/ ?0 k
$ m1 \. t: z; I N! c* i' C( i' l第38题,逻辑运算符两侧运算对象的数据类型只能是0或1。()0 K" o: f- k, ~2 F* q8 i
A、错误0 a& ~0 }1 h6 K& h1 b% z1 c
B、正确
7 V2 V6 s8 _2 O R! S+ a& f0 B0 Y1 A正确资料:+ @1 H8 O* Y$ j- L- v
% ?- W# l5 j7 S p; |% z7 N
5 k( ?% X1 `, Z5 F, g第39题,宏名必须用大写字母表示。()
+ z* B+ b2 Z6 JA、错误
9 q. ?1 O( @5 |$ AB、正确" X" e6 |( H, Q1 F
正确资料:, S8 O! a4 Z( i1 [" H4 E n$ V3 a
( n( C" t0 `, u3 ?' \7 s0 x5 q! B9 w( v2 j0 u7 H7 p$ M
第40题,C++语言是从早期的C语言逐渐发展演变而来的,与C语言相比,它在求解问题方法上进行的最大改进是面向过程。()
: D* g M+ _. j% Y! OA、错误# K$ t) ^8 F! @- c: K
B、正确
7 u' O- T7 }- @: j6 P0 {正确资料:
7 E1 z0 @# q" d
7 A5 J1 h& `: F: |( _0 N( o% S4 R+ V" x
0 k: [! |/ ^( z/ u3 i% X3 N5 r/ a2 k* r- g+ G0 Q' o
- W! `' _0 {+ [, F# U: P
8 x' H8 e4 n' c/ B% P1 W+ q1 ~8 `# F' r" H( S! f# O
* n- [0 S. P+ R
! }+ n) Y8 B9 H. Z
0 w Q& y! t* `6 ~8 {
9 S# L, w$ ~/ z5 \% [' X
6 a5 o. X& T3 f) z. G5 V& ]
B$ ?9 ~: m: r" H' e
, _0 r, v. S+ y. q: w
& K6 Q( `# G& p& K+ r( A |
|