|
|
中兴历年通讯笔试题共享! _! y4 P# c" @6 k" U+ f" w
7 u9 i* b, Y' w! ~% \! L% I. c据说就是和研究生考试有的一拼的史上最牛笔试题,不过我看下来还好,就找到前三年的,如果有同学有08和09的记得拿上来分享哦。
- e/ L8 R) Q+ H: N# H$ j
1 [* @" b8 |+ P* f. L f' J: ^
( U% C1 h+ M7 s4 G K4 v4 L 中兴笔试题目2007; n9 |6 f) j3 R) `& |, E
依稀记得几道题,公共题50分,C++和JAVA二选一50分。 其实一直就在用C,一看没有C心里还霍霍的,我当然选的C++。
$ E/ B: o0 T0 d5 A- q2 f 我做的C卷:
* n6 D S6 _5 ?% O0 u 公共题:0 y; ~6 V: M- N5 i
1、数据库中 XXX 和XXX操作可恢复数据库。undo redo 吧?
9 W3 x/ A/ r9 C8 J7 l 2、数据库的核心是XX。+ m7 `& Z% D" N7 o5 ]
3、头文件中<> 和“”的区别?% ?- s! J( D* W
4、定义一个宏,输入两个参数,输出积。% i* \2 @ H3 X: H5 d; g4 Y
3、简述电路交换和分组交换的区别及优缺点。5 ~9 c; C) D0 N9 W4 a, `6 m
4、# i5 J' I* H% n- M2 A0 Q
C++
. F+ H$ @/ H. c: ? 都记不太清了,过去快2个星期了!
2 s2 f% i& Z3 { S# Z# T 大约4个选择题,一个6分。数组的操作,在内存中的分配(注意下标从0开始),大题:
" j* V, U8 |+ D0 \4 v) C {% M 1、18分的题:
; t- R' y) ^' z) O7 _ char *GetMemory(void)# u( |% E, u% o3 o7 s* z; _: r( C
{4 a0 j6 J# _8 B, e7 T
char p[] = "hello world";) S( d1 S7 [! {' C: M" I
return p;
[7 ~& u* }9 x% U3 y }+ M; j- V& L$ L8 V4 r
void Test(void)
5 [* }3 O8 I1 T# a `+ f1 u {
/ M- ~2 M4 j' L9 r char *str = NULL;: y; j1 V7 N) N- U$ d
str = GetMemory();
5 L$ R8 p3 B- j* P' ~ printf(str);6 Z1 m. n* A' p+ Z \' E' Z* [
}4 D: Q' |0 k2 H7 u2 w2 Y
请问运行Test 函数会有什么样的结果?
5 B; `( E% E: N& G! e8 A" H8 O 答:可能是乱码。+ g' }4 I; i( L$ d
因为GetMemory 返回的是指向“栈内存”6 W% Q5 f* J( w( n3 X q
的指针,该指针的地址不是 NULL,但其原
6 s; a& R& E# y1 N& e7 Y- I 现的内容已经被清除,新内容不可知。
B- I0 d2 i7 C, w/ h) e4 [) d 还有一个比较简单,不写了。
9 m" M# N0 A* S6 e3 N. t 2、析构函数什么时候运行,实现什么功能?
5 G5 _! a0 E8 L7 s: k 7、全局变量和局部变量的区别。$ I/ n1 d) R+ T3 a9 V$ z. Q
仔细看看林锐的《高质量程序指南》基本不会有大问题。可惜啊,大意了...鄙视中; s1 `3 f- S( W% f( _
中兴软件笔试题(2006.3)0 C; ^% _' K) f0 [6 }* b& R( b
中兴软件笔试题–2006年3月21日于华侨大学5 V2 X$ G* _4 W% G; ?% u5 U$ w- @
2006年3月21日于华侨大学洪祖杭大楼,笔试分三部分,公共部分(都做),C++部分和JAVA部分选做。考试时间1小时!3 [$ r- [; M6 g, I5 ]
公共部分(50分)
9 e8 D& K7 l0 \/ Z1:作业调度程序从处于( )状态的队列中选择适当的作业的作业投入运行。(3分)* x( w7 I& Q L# }
A 运行 B 提交 C 完成 D后备% c! ~8 a+ s; K" w& [
2:SQL语言中,删除一个表的命令是( )(3分)
) l& F) S/ }5 ^' t1 G9 w7 \& RA CLEAR TABLE B DROP TABLE" g- }" j+ W ?* e7 ?$ \
C DELETE TABLE D REMOVE TABLE
7 g1 r+ e" z1 X2 E4 X% @; b; ~3:ATM采用的线路复用方式为( )(3分)1 q5 c. `: ]4 Q2 e5 S
A 频分多路复用
2 {" P! E3 L4 o* t$ O1 K% d* Z6 yB 同步时分多路复用
/ B2 L _& |& i& d6 n$ p( \C 异步时分多路复用7 V4 b9 g% Q& E$ E
D 独占信道. E4 {% i% r5 A$ P( |
4:数据库中只存放视图的( )(3分)
4 E3 q- K, f& i' @- uA操作) s# P/ _& p! D0 n8 o
B 对应的数据8 l( B# m1 {& T& b
C 定义! @# ~) x8 M0 y) K; I) g' S5 p1 ?4 w
D 限制# t* j( Z0 r* u3 Q$ H
5:什么是虚拟设备?为什么在操作系统中引入虚拟设备?(10分)
: }/ C- A( v4 X* U- K W6:TCP为何采用三次握手来建立连接,若采用二次握手可以吗,请说明原因?(16分)
4 p. T2 k! \) X! ^7:什么是分布式数据库?(12分)
1 l* V# J1 l/ UC++部分(50分)( n8 h7 x, L- h. u- i
1:设有“int w[3][4];”,pw是与数组名w等价的数组指针,则pw的初始化语句为________________(3分)
9 P- g5 R- [2 d, j$ m0 q2:要使引用pr代表变量“char *p”,则pr的初始化语句为__________________(3分)
8 { O$ S! l9 c5 X0 L3:“零值”可以是0,0.0,FALSE或者“空指针”。例如int变量n与“零值”比较的if语句为:if(n==0),则BOLL flag与“零值”比较的if语句为______________;float x与“零值”比较的if语句为:______________。(6分)# S" i& }. {& b% B: O
4:社有如下语句:(3分); f8 o" ~7 {. W
Int x;6 Z" U& _5 Y- [' s# _
() O( O8 d& d6 x1 I: |
*px=0;
, W# d. X0 A; m7 S则选择以下哪条语句可将x值置为0。
/ [4 p6 _) ~1 p; g" M( OA int *px; B int const *px=&x;! p6 g, q7 |3 W2 {( j
C int const px=&x; D const int *px=&x;
& ]) E8 A( {5 B! Y' u5:设viod f1(int *m,long&n);int a;long b;则以下调用合法的是( )(3分)
+ G5 c) S; _- k8 T0 ?9 @A f1(a,b) B f1(&a,b). J( T: V) {0 K" Z2 c5 N
C f1(a,&b) D f1(&a,&b)
, b; d9 X& j& {$ H3 ]4 G- q8 t6:请写出如下代码的运行结果(6分)( via: unus.cn )
$ q% h* L8 Y5 ?$ vInt main() a X$ ?* H, A& p* F
{int a,b,c,d;
( L/ n+ p' u# o* B8 ea=0;
) j5 \. H. J! i- h9 E" ab=1;, p9 o" M& b$ i7 _9 z( Z
c=2;: M0 K% _; T5 I) s; @4 @0 e
d=3;
; c5 H' R9 V4 z0 r E& _) \printf(“%d”,a+++b+c+++d++);} _) @) t. m0 i) j8 G
7:写出下面函数的功能(12分)* l; o+ |8 d; ]& W" @2 _" G
Template<class Type>9 \8 a3 w+ i+ y- w+ {2 V
Void WE(Type a[],Type b[],int n){' f6 Z6 X6 b i7 G
for(int i=0;i<n;i++) b[n-i-1]=a;}3 h1 O. a B2 d% d7 `- g, X* K0 ]: \
8写一段代码判断一个单向链表中是否有环。(14分)/ I L, V: q$ P) V: t3 a8 w
给出如下结构4 {9 F8 a* [/ P4 b B" U7 a3 S3 ?) \
Struct node' W- ~ @, Q& Z5 v$ D @
{steuct *next;
9 J+ H9 [3 V' G8 G: e$ Z};5 h; v/ x3 z" Z) {# ~& y) T
Typedef stuct node Node;
) L) _4 E5 Q+ P3 c' X$ A. DJAVA部分(50分)1 G2 n2 J) S+ a8 P+ @/ j, v
1:判断下列对的是哪个( )(3分)- m+ u8 T$ \5 Y/ D7 u6 K" Z
A short s1=1;s1=s1+1
N' y% E, U; n( l5 YB short s1=1;s1+=1
, ?) `$ j$ x" i7 cC short s1=1;s1=s1-17 C; c9 Q# c) V1 X4 }: \* |
D short s1=1;s1=s1*1# r. k3 b& I# b' x1 h
2:main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )(3分)
7 N1 k% Q3 D% ]+ yA public static void main ()
' v/ p0 Z: l' XB public static void main (String args)) h. t! d5 H1 Y! ]/ v5 B6 e( S
C public static int main (String []arg)0 ~, |1 \$ [/ j% i( j
D public void main (String args)
$ Y7 l- I& O B: P7 m7 t- C4 n0 x) \ O3:设float x=1,y=2,z=3,则表达式y+=z–/++x的值是( )(3分)
8 z# ~7 E' ~( e: ^' ~8 u, XA 3.5 B 3( [9 o0 g8 k7 |5 u$ y
C 4 D 50 f' d. s6 _% ?+ l' L& e
4:Math.round(11.5)=_______
8 e& ]! \* k8 iMath.round(-11.5)=_______(4分)6 v) u1 s' B% h- I+ M$ m& ]: p
5:假设x=10,y=20,z=30;计算下列表达式的值(6分)
9 j, x# w( \+ O+ l9 DA x<10||x>10__________
3 A+ R6 S* `: @) {$ bB !(x<y+z)||(x+10<=20)___________
0 i6 v9 X; }, ]9 EC z-y==x&&Math.abs(y-z)!=x_____________! t/ ^) k* B8 f* ]( a4 ]
6:方法重建Overload和方法的重写Overriding的区别。Overload的方法是否可以改变返回值的类型?(10分)
1 @% y( I" m! w. Y7:谈谈HashMap和Hashtable的区别(6分)0 i. i h; x/ G% _
8:构造一个类来描述屏幕上的一个点,该类的构成包括点x和y两个坐标,以及一些对点进行的操作,包括:取得点的坐标值,对点的坐标进行赋值,编写应用程序生成该类的对象并对其进行操作。(15分)
0 ^, I5 z3 |" i% \( m8 K2005年中兴软件校园招聘笔试题8 d7 V) \" W) H! F }. n X% C
第一部分 数据结构和算法
2 V B$ Q" G2 L1 ^1.假设执行语句S的时间为O(1),则执行下列程序短的时间为()
+ }# ?, D S8 ~, m' s, f" ?for(i=1;i<=n;i++)
" Q3 V O6 S7 _) Ifor(j=I;j<=n;j++)- c! K2 p! R( S' c1 G) W& G
S;0 z& L8 f, h L' _/ [0 |1 m7 W' ]
A. O(n)
# M& V; Q; V3 {3 f2 w7 pB. O(n2)
9 i! t& G" i% [4 v# TC. O(n*i)' D5 O/ d, t5 W% s* a
D. O(n+1)' l0 v8 l3 x O3 }, {
2.二位数组A[10…20,5…10]采用行序为主序方式存储,每个数据元素占4个存储单元,且A[10][5]的存储地址是1000,则A[18][9]的地址是()7 |% F9 d9 o" k6 Q$ W
A. 1208) u p# K, \: ]; o
B. 1212( c" i7 c$ V; T7 x+ C
C. 1368
' H6 h5 D3 f% L; I% E9 H2 QD. 1364
; o: o. z! d( m1 y3 Q! R: w3.设栈最大长度为3,入栈序列为1,2,3,4,5,6,则不可能得出栈序列是()
' D& U; E/ E1 a+ D7 |0 l- D% g7 |A. 1,2,3,4,5,6; x" i; ^- E* k( T+ \
B. 2,1,3,4,5,6; u) u h, Y- u6 b: B
C. 3,4,2,1,5,6 C: M* }7 {7 _8 k/ j9 W
D. 4,3,2,1,5,6
. u* ~% j" |& b2 @+ g) y! J4.设有98个已排序列元素,采用二分法查找时,最大比较次数是()8 V7 Z+ {/ @- Y& E) ?# `1 W) i0 P
A. 499 z' K. {# Q- s7 I
B. 154 x3 z- i( s. L: G: a e
C. 20! N8 ~0 G- i+ o+ K+ S$ b- H* [ o6 L
D. 7+ Q+ c: V, N: N
5. Hash表示用于数据存储的一种有效的数据结构,Hash表等查找复杂度依赖于Hash值算法的有效性,在最好的情况下,Hash表的查找复杂度为()( via: unus.cn )
. O7 o# N* w, l& gA. O(1)% V: }0 J2 c# w6 L6 U
B. O(logn)
1 e; C6 T# H: b2 l9 u! p# x* Y* WC. O(n)# o' i/ [: ~; e) N% e; q
D. O(nlogn)$ ]% W# c0 A1 @3 M% B
第二部分 软件工程( u2 M% a- e) h/ d$ K' K
1.软件能力成熟度模型CMM共分为()成熟度等级
5 U% P# `6 i5 j B; dA. 3
* x e! ]( ^$ z" ^, J+ ^B. 4 k+ @/ f4 p8 ]! _ N$ o; n7 `
C. 5
1 E3 n5 S* t8 O2 ^7 d' |* O/ LD. 6* Y9 ?& H) k" X( T6 T/ }
2.按照是否了解软件的内部构造,可以将测试分为黑盒测试和白盒测试。考虑以下算法的PDL语句,如果要对其进行完全路径覆盖的白盒测试,则需要()条路径。; ]) r# A0 Y( t$ e( B: v
do ehile records remain2 K' G- s' [, D) R7 w! y
read record;! b- c3 N. Z- F' W3 i) B4 `
if record field 1 = 0
( _+ x2 l4 i# o3 Ythen process record;+ F8 n, B9 K! i% v7 b
store in buffer;0 U, D! n% X- W, C& y
increment counter;5 N% U# }5 D- o
elseif record field 2 = 0
& q; L) d/ D4 Q1 g* k. o wthen reset counter;4 n R0 C# W! R; d3 b
else process record;
8 [8 m7 w, t( j- Pstore in file;
% m, g- y& O6 q6 D9 G8 |7 ~endif$ T# X6 E0 a: V& q) c# t @( p/ L4 Z9 K3 P
endif- c; v0 l8 U* B( h
enddo$ u! ~+ @6 J% {& P
A. 4$ V5 X. ]" E2 q7 m3 ~# h
B. 50 M* i& G+ }1 l
C. 6; G& B6 j3 v7 ]+ u: _, ?7 c
D. 7/ Z8 a7 V: l: G3 ]6 q" X$ D+ A
3.按照瀑布模型的阶段划分,软件测试可以分为单元测试,集成测试,系统测试。请问以下那项测试不属于系统测试的内容()
5 j" A7 b- S* f- X8 aA.压力测试
. j0 ^, ~7 ]/ kB.接口测试, I- m& B; A* V- ]0 J
C.功能测试$ V6 Z- J, s( K v9 T1 X; |
D.安全测试! [5 n& r! r- ~+ Y
E.性能测试6 C" v! j5 O7 |0 R a3 e& ~* @+ }
4.测试用例的设计是测试的重要阶段。系统测试用例设计应该从什么时候开始()
. a. E' M. U; U4 L, WA.需求完成9 v0 I; V! `' R! e8 J7 K9 a( L7 Y
B.详细设计完成
- g. H: W0 _2 C% a- S; y; V/ B" AC.编码完成) [) r9 Q* X# t3 a
D.系统集成完毕,提交系统测试, a1 x; z# `; I9 s3 V \3 M: I- T
5.在UML方法中,使用多种类型的图形来帮助进行设计,请问一下那些图形不是UML的图形类型()
4 q# _& a. l. |A.类图- G7 ^/ G4 \6 x- o2 G/ ~; }( `
B.实体关系图1 [" B$ J B7 w$ t# q! I
C.序列图/ b9 n! f5 _9 \7 J
D.活动图: Q- A; B" a9 u( i) `
第三部分; b# x% [* B& N* d ]1 O; `9 j
Java语言及其他
+ d# r3 I3 r/ T8 c1.下面哪个是short型的取值范围:()
; F Q" ] O# _* a# \& dA. -27— 27-12 X8 h$ q" r) u$ x( d* }5 h8 k
B. 0 — 216-1
. F9 C9 }, W6 H/ h& O5 e5 ZC. -215— 215-1
6 ~; E7 G H0 ]: r* L+ sD. -231—231-1
. n- M$ b- @3 R" n2.下面哪项是不合法的标识符:()/ U4 Y5 m" r- V4 i# A
A. $persons6 S E! v5 A) [0 v' y! y# y
B. TwoUsers8 m; m; U, k. ^2 G" j
C. *point& r. [" {0 _- f) k U
D. endline
% Y# D3 x7 _3 G4 D" w3.设 float x = 1,y = 2,z = 3,则表达式 y+=z–/++x 的值是()2 Q- @3 E0 m2 e ]0 \, K$ A
A. 3.5( ?1 J% {) e7 k
B. 3
3 C5 U' W* G% w) P. l; HC. 4- F# i$ o0 Z5 a+ T& E0 u
D. 5' e9 d( Y$ K8 A% D& T9 X
4.下列哪些关键字即能够被用于局部变量的修饰,也可以用做类变量的修饰(), M4 S# X: l1 {6 Z2 B8 z
A. public! S0 ^( L7 X p4 e. t
B. transient+ _. I' b, `- u) S7 `; g
C. static' A, j& m; d+ B2 {; f8 c: i: d E; `
D. finally$ E& E! c% ?5 W4 v1 ~- E# \7 }
5.以下的语句构造了几个J***A对象?()* ?, o4 N; o1 F8 `
String S = new String(“aaa”);
# J# u' k. y7 ?. J* C1 yA. 1( _6 }) ^6 R- t0 E4 T! T' O
B. 2- Y) S5 A0 G4 K- n' R
C. 3) p& E" O3 X* Q4 n9 u2 Z( y' c8 h
6.下面的哪些叙述为真() O) D! P# D% f' S k. B
A. equals()方法判定引用值是否指向同一对象
+ |0 W5 M0 G- n R$ o, J# _B. = = 操作符判定两个不同的对象的内容和类型是否一致
0 j" a Q+ b* TC. equal() 方法只有在两个对象的内容一致时返回ture- G9 ^4 \, x ~& E! Q4 G: k9 b: [
D.类File重写方法equals()在两个不同的对象的内容和类型一致时返回ture
/ o% o3 }. n4 v3 c7.如果一个对象仅仅声明实现了cloneable接口,但是不声明clone方法,外部能够调用其clone方法吗?()2 ~, |+ t3 g1 E( x
A.能
& ]0 o3 z3 Y- _: fB.不能- v% }8 A- s9 Z7 a- P* }; D' z
C.不确定
5 \; H) ~& A2 {4 L* l' `9 L3 n9 ?) l7 U8.考虑在C/S结构下,服务器接受并处理请求,那么关于服务器处理请求的模式,哪些描述是错误的()6 w( M) G6 C0 U: I1 B4 h
A.单线程模式下,服务器使用一个线程顺序的处理所有的请求,可能导致阻塞% J& b! z7 I0 B. B1 X
B.服务器可以为每一个请求创建一个线程来处理该请求,这样做比单线程模式更加稳定
' B6 g( @- u0 kC.线程池模式下,当线程使用达到最大数量限制之后,线程池中没用可用线程的时候,服务器将阻塞或者拒绝某个请求的处理8 ^0 }' T' y4 a' I
9.使用Swing做界面的时候,如果把一个JButton放在一个JFrame中,在JFrame改变时只影响JButton的高度而宽度不受影响,应该使用哪个布局管理器?()7 Y& A9 R) d) K4 M3 r
A. FlowLayout
! Z1 `( B0 E* {0 RB. CardLayout+ S w! R6 p& o. C$ N$ O* k
C. North and South of BorderLayout
; M8 o9 U* o7 b! [/ J u, l! bD. East and West of BorderLayout
P) H. [: B# v/ v) ~# VE. GridLayout1 M8 t- Z( b$ z0 L
10.以下的那个状态是EntityBean所具有,而StatelessBean不具有的()' ]8 C, R! Z0 ~0 Y; A# X
A.池态* `# [2 L3 T! _. `0 V, k; d; K
B.就绪态
' s! |3 s, B0 D3 q: F: sC.不存在态* @. P, i4 N/ x6 Y/ \
D.钝化态
( c" h% i; _5 J7 N8 g1 e) L2 T9 P" o11.以下关于数据库范式的描述,哪些是错误的()) |, G( w2 r: F7 l% a
A.如果把多个数据项用一个大的String表示为一个字段,则不满足第一范式
& A) r6 U$ S5 EB.满足数据库范式使得数据库的效率更高
' x: j8 `3 r$ W& b# a% }C.如果满足更高的范式,则必须首先满足低级别的范式
! N# D$ x# {* s0 R" FD.数据库第二范式要求把表中与所有键没有直接关系的数据全部拆分到其他表中
, g8 n S$ l: Z; v' a" D8 B( b. l12.考虑一下需求:包括学生、课程和教师的信息。其中学生的信息包括学生姓名、年龄地址等;课程信息包括课程号、课程名、课程学分等;教师信息包括教师的姓名、教师的地址等。一个学生可以选修多门课,而每门课也能有多个学生选修;一位教师可以教多门课,每门课也可以由多个教师讲授。请问如果使用关系数据库,并且达到第二范式的要求,需要设计()张表9 N. \ |; t! N B Z' p. d! Y* q* @
A. 37 f1 n% F" c3 C3 m0 k0 u
B. 46 N6 W% f9 i) z/ C
C. 5
( q, Y0 f& H) G' ^6 f) zD. 6' f3 {0 [+ O" L! j8 q, V* S$ @
13.为了加快数据库查找的速度,需要对数据表添加索引,请问以下关于索引的描述,哪些是错误的()
0 T. e' x9 N' e& wA.聚类索引中,表中行的物理次序与索引键值的逻辑顺序相同
d4 W: m* P* ~- {- sB.使用索引会使得数据更新的效率降低4 g. `* j0 @( L& f- ?4 ?
C.在大多数数据库系统中,每张表只能够有一个聚类索引
' E- \ g6 J4 B5 Y2 ED.考虑这个SQL语句:Select S.name,S.age from Student S where S.address=”成都”,如果我们对表Student建一个复合索引(age,address),可以改善上述查询的效率。! i7 P9 a2 X; w, ]; Z
第四部分 问答题
0 Y2 h: L2 b* Z% }0 g/ s- d. F4 `1.简述一个Linux驱动程序的主要流程与功能。
2 V8 f: N& E. ]2.请列举一个软件中时间换空间或者空间换时间的例子。( [+ f4 p) o& r8 F# J4 l6 z1 O
3.简述进程与线程的区别。 |
|