|
|
楼主 |
发表于 2005-10-20 17:44
|
显示全部楼层
发信人: jamsir (风间苍月), 信区: Job
; O- ^; Y5 ^, I7 T8 a) z1 R- m标 题: 北电05年笔试试题(大致题目)$ y2 Q! {* v' Z% V; G
发信站: 逸仙时空 Yat-sen Channel (Thu Oct 20 17:00:02 2005), 站内信件$ M0 r& O8 s5 j% O6 ]. M
1 E/ m! G- Q7 J: w/ P7 ^+ P
/ W: e, I/ Z! V# {2 J5 r& r1 T2005年10月20日下午的北电笔试题目(地点在中山大学的冼为坚堂),分为四大部分 4 x0 e5 R. ]8 B
' l+ R/ h t; W. j' W* N; F
: [/ v2 ?+ j {' @. H一. 一大段中文要求译成英文。内容大概是北电为英国电信提供了一个IP语音电话的
9 n0 a; B9 |3 z) F( N 解决方案,然后就是一大堆带来的好处什么的。9 P2 a. h* w8 U: J. o* G0 {! c
( S1 i. R' l- k% H二. 一道编程题目,确定一个输入的字符串含有什么字符和各个字符的个数。6 q& S8 `: [0 K( }2 R
- ]: o3 T, A5 `1 x; h
三. 改错题,有两道。
' t' A3 U5 X+ S* b- e' n 1. 找出下面程序的错误:
9 ?9 V7 u# D2 M( J, p) V" k7 ^4 M( K #include<iostream.h>
* t- w' U. W+ I. E$ Z class A; ?4 ~1 m% t- _$ W4 [- V
{
9 Z* g" d- v: I1 d Z, ] private:
& Y3 I9 h$ h1 @ int aa;% R3 K j8 s/ b
public:
4 a! C I' P! w: z setA(int a) { aa = a; };9 z% l' q/ W. m/ T. i" p
showA() { cout<<"aa "<<aa; };
1 g$ P K" u$ B) I4 W/ F7 p3 m };1 e1 G; x1 o! g: m" n) }
/ C/ V7 F2 @2 d
class B:private A
. ]5 ]- C/ A: l9 N9 E {
3 N8 W6 e K8 Q- s3 O4 z7 l private:
Q Q7 o, C& O8 J+ [* w1 X int bb;5 k A8 F$ T$ I# _* j" |! [
4 Y! F9 ?! o- n( q8 c# M% u
public:' f2 r7 U$ U9 W2 H3 k7 A( n
setB( int b ) { bb = b; };
8 ]9 U! H D9 O3 s, S. v6 d, ~6 q+ \ showB() { cout<<"bb "<<bb; };% O. B, t! x- H# m
};* L3 l6 T+ c8 k7 L4 N1 H
6 s" Y2 t; k4 U* P D# F
void main()
" L% b/ B" ?& p. c {( R8 }1 m8 J C7 G6 d# r
B obj;; A/ @) i8 `% k
obj.setA(3);
* z1 ?2 g; x z: \% K1 G8 n obj.showA();1 }3 C) D- x F9 u1 T* |
obj.setB(5);* c* p. b, }- T* S' j/ I$ l, \2 T
obj.showB();! n- ]6 o0 k6 W
return;
, D5 l+ I( ^3 f# x& C4 L; `0 }9 @1 T2 S };
- R. S7 Z _) S' V) i1 c# ]
. O/ `1 Y/ v9 w% _* p0 `; _ 2.下面是一个复数类,程序想输出4+3i,请问哪里有错?1 |% b: Y) Z. R& Q& ^& q' T
#include<iostream.h>& ~6 l6 n' D9 C
class complex0 i6 p" q/ \; u0 V0 z. J
{; _4 C+ r6 o' }( R. Y% A8 U% x$ s
private:
! t- R' `; F( V* s int realPart,virtualPart;
6 \. h E- g8 T. Q. C. g
5 v' b5 C. _, q; t public:& Y; w% R5 q+ c$ l) t! F( _
complex(int r, int v){ realPart = r; virtualPart = v; };
: G' O: V& j: i0 u1 r- ^8 b ~complex();! d- N4 n, \8 y/ w0 W
complex& operator++(){& F# U5 y! ~ K/ V( K1 \* P `6 c3 i
realPart++;; x) A8 o5 u8 ]
return this;
7 q' |9 N7 n" E/ b };% {' H+ c( o2 X$ C5 N
void print(){ cout<<realPart<<'+'<<virtualPart<<'i'; };
2 G8 a1 B* E0 P% ^ ? [ };
8 D, m4 u$ l/ ^5 m& N- g2 E6 _- O$ Y& g* K9 i0 Q" s; S( D1 E
void main()
9 ?1 f& [1 {7 @% D- U# G {
" |7 B- J) m! c/ H4 N& ` complex c(2,3);
6 @; y5 ^* e1 F ++++c;
0 L, I2 l; d* ^& k1 y$ I c.print();
) K! C0 h7 c' a9 e! O return;
1 e& h# S) t5 ^- v% r! p# {' [ }; ' ^2 z1 z% T2 E) k- Y" J: T
9 B. w6 g8 }# _5 M1 n- J; g$ i; Z四 逻辑题,有两道,都是要求写出输出。2 }2 B% N) e! Z4 |* M2 g9 t7 @3 M
1.
1 R% p, Y7 C2 B" x" t' _ #include<iostream.h>
; |; c; i; L+ ?& \9 k }& Z" r #include<string.h>% g4 y- L' P6 v5 Z3 T& t
void main()* m3 ?0 Y/ C2 x* I& Q& s7 ?
{
; M* ]7 A7 M$ X char* array[5] = { "student", "worker", "p...",
1 F j' O, X4 U1 _$ T5 s9 W "c...", "p..." }; //忘了的省略掉了
; o( H5 R: Z) z" x char *p1,*p2;! V8 [" R% n$ r3 X
int i;% H8 k; s1 `. d! ]) I. Q
% |, v; c9 t. }1 q p1 = p2 = array[0];8 z% u9 h- A% P$ H' q
for( i = 0; i < 5; i++ ){
7 [* a1 u# x$ d, i1 k1 a8 | if( strcmp( p1,array ) > 0 ) p1 = array;
) ^- ]! L& T; {. j- K! ]4 P* t if( strcmp( p2,array ) < 0 ) p2 = array;& l# N$ s0 B- T0 c# x4 T
};
( H$ N* Q, M; c8 L2 u! f D" c! h3 _ cout<<p1<<" "<<p2<<endl;
$ u1 J! {' v! k
9 W E2 F# s. E return; ) V- X$ O7 w4 ]0 v2 u3 r F+ W
};6 `1 `2 `+ a# H0 G; A
8 g0 H' y/ M: Y& z# ` 2.7 ?+ U% F/ W0 m! \( B
#include<iostream.h>
* x8 G5 x/ ~% l* _3 d6 {% K) |! |4 J class A5 x a5 P. h4 _: t+ F3 M# G
{% ~6 L7 ?9 r U+ W# G+ w% ~" b9 A
private:
3 D7 }' r4 Q- k3 F) c int a;
8 g8 }! V1 J% N/ p4 r* d+ f 0 ~5 A1 z! _$ c' j5 n: e+ d
public:. v- u9 N4 u# u. m c
A(int aa) { a = aa; };
. \. j! e+ g' q' w1 h ~A() { cout<<"Destructor A!"<<a<<endl; };
! m3 w( Q, ~% i };
9 T" s" Q5 f/ B3 I/ F* f
/ ~7 y9 `6 D# x9 D class B:public A1 q4 z' T Y% a# Z
{
& ~- N; b) A0 d/ d4 E+ \. t% E4 b( `8 N* t private:
, t9 f7 i; k1 b" v* m$ V o9 M int b;: H1 b) d+ P! C. N7 G+ z
. |: L- R) N0 @ W
public:
3 F3 [7 r+ E, W0 @* K3 I7 } B( int aa = 0, int bb = 0 ):A(aa) { b = bb; };
4 R6 N5 J/ a3 d6 J1 a. D6 J ~B(){ cout<<"Destructor B!"<<b<<endl; };
: `$ @, E" ~) j, L$ A* H4 m };
# g! X( s: Q& q6 i0 z$ P1 O
; O2 [$ z4 ^. P8 f. T6 M void main()' B5 N" Y. x# H3 g b
{4 a5 s x, x% F5 ?
B obj1(5), obj2( 6, 7 );
' n( ~/ z; K- _6 P& j# Y return;
- Q+ N# T9 S" a# d+ F) p: X };
* b1 P t$ w" Z) ^9 @3 X! n! O' T" p; A: C* z9 j
上面所写可能会有一些错漏,特此声明。2 E; |7 S# z2 l' C0 K4 I* W
, ~- y5 P8 M4 V2 U/ s9 v
[ Last edited by 2002070344 on 2005-10-20 at 09:46 ] |
|