阿里巴巴2011筆試題(強化)

六、在一個長爲33釐米的光滑凹軌上,在第3釐米、第6釐米、第19釐米、第22釐米、第26釐米處各有一個鋼珠,凹軌很細,不能同時經過兩個鋼珠,開始時,鋼珠運動方向是任意的。兩個鋼珠相撞後,以相同速度反向運動。假設全部鋼珠初始速度爲每秒運動1釐米,那麼全部鋼珠離開凹軌的最長可能時間是()

A、30                     B、26                        C、38                      D、33 ios

七、std::vector::iterator重載了下面哪些運算符?ACD
A、++                     B、>>                       C、*(前置)                   D、==
數組

八、下列運算符,在C++語言中不能重載的是()
A、*                        B、?:                    C、::                           D、delete
函數

十、給定以下代碼: int x[4]={0}; int y[4]={1}; 數組x和y的值爲()
A、{0,0,0,0},{1,1,1,1}
B、{0,0,0,0},{1,0,0,0}
C、{0,不肯定},{1,不肯定}
D、與編譯器相關
spa

十一、假設在n進制下,下面的等式成立,n值是() 567*456=150216
A、9                B、10                 C、12                     D、18 .net

 

十二、關於struct和class,下列說法正確的是()
A、struct的成員默認是public,class的成員默認是private
B、struct不能繼承,class能夠繼承
C、struct能夠有無參構造函數
D、struct的成員變量只能是public blog


1六、下列代碼編譯時會產生錯誤的是() 繼承

  1. #include <iostream> 
  2. using namespace std; 
  3. struct Foo 
  4.     Foo() {  } 
  5.     Foo(int) {  } 
  6.     void fun()   {  } 
  7. }; 
  8. int main(void) 
  9.     Foo a(10);    //語句1 
  10.     a.fun();      //語句2 
  11.     Foo b();      //語句3 
  12.     b.fun();      //語句4 
  13.     return 0; 

A、語句1             B、語句2           C、語句3             D、語句4      ci

16. D。語句3就已經不對了,應該沒有後面的括號的,但編譯器會認爲這是函數的聲明,因此3自己不報錯,4基於3的認識上出錯。 編譯器

1七、在32位機器上,下列代碼中 it

  1. #pragma pack(2) 
  2. class A 
  3.     int i; 
  4.     union U 
  5.     { 
  6.         char buff[13]; 
  7.         int i; 
  8.     }u; 
  9.     void foo() {    } 
  10.     typedef char* (*f)(void*); 
  11.     enum{red, green, blue} color; 
  12. }a; 

sizeof(a)的值是()

A、20       B、21       C、22        D、24           E、非以上選項

Union是取最大的字節數,取13字節由於pack(2),以2字節對齊,必須是2的倍數,因此對齊後是14;函數以及類型重定義不佔字節,外層的struct的字節是4+14+(3+1),這裏enum要是2的倍數,因此+1對齊,結果是22字節。


Type

Size

數值範圍

無值型void

0 byte

無值域

布爾型bool    

1 byte

true   false

有符號短整型short [int] /signed short [int]

2 byte

-32768~32767

無符號短整型unsigned short [int]  

2 byte

0~65535

有符號整型int /signed [int]

4 byte

-2147483648~2147483647

無符號整型unsigned [int]

4 byte

0~4294967295

有符號長整型long [int]/signed long [int]

4 byte

-2147483648~2147483647

無符號長整型unsigned long [int]

4 byte

0~4294967295

long long

8 byte

0~18446744073709552000

有符號字符型char/signed char

1 byte

-128~127

無符號字符型unsigned char

1 byte

0~255

寬字符型wchar_t (unsigned short.)

2 byte

0~65535

單精度浮點型float 

4 byte

-3.4E-38~3.4E+38

雙精度浮點型double

8 byte

1.7E-308~1.7E+308

long double

8 byte

 

1八、下面描述中,錯誤的是()
A、基類定義的public成員在公有繼承的派生類中可見,也能在類外被訪問
B、基類定義的public和protected成員在私有繼承的派生類中可見,在類外能夠被訪問
C、基類定義的public和protected成員在保護繼承的派生類中不可見
D、基類定義的protected成員在protected繼承的派生類中可見,也能在類外被訪問   

A:用戶代碼能夠訪問類的public成員;B:protected成員能夠被派生類訪問但不能被普通用戶訪問。C:可見,但在派生類中爲protected成員。D:protected成員不能在類外被訪問。

2三、一個骰子,6面,1個面是 1, 2個面是2, 3個面是3, 問平均擲多少次能使一、二、3都至少出現一次!

1發生 的機率是1/6,  2發生的機率是2/6,  3發生的機率是3/6,求1,2,3至少出現一次的投擲次數的指望。

假設投擲n次時,一、二、3至少發生一次的機率爲p

(1)n=1和n=2時,p=0;

(2)n=3時,一、第三次出現1p(n=3)=p1+p2+p3

http://blog.csdn.net/libertea/article/details/6940062

2四、問題描述:
12個高矮不一樣的人,排成兩排,每排必須是從矮到高排列,並且第二排比對應的第一排的人高,問排列方式有多少種?

令h(0)=1,h(1)=1,catalan數知足遞推式[1]

h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)
例如:h(2)=h(0)*h(1)+h(1)*h(0)=1*1+1*1=2
h(3)=h(0)*h(2)+h(1)*h(1)+h(2)*h(0)=1*2+1*1+2*1=5
相關文章
相關標籤/搜索