完美世界筆試題和面試題答案(完整版)(一)

思而思學網

小編如下為大家分享的是完美世界的完整版筆試題,大家敬請收藏和練習!
1、設有矩陣A1(3035)、A2(3515)、A3(155)、A4(510),M=A1A2A3A4,下列組合計算M所需數乘次數最少的是:

A、(A1(A2(A3A4))) B、(A1((A2A3)A4)) C、((A1A2)(A3A4)) D、((A1(A2A3))A4) E、(((A1A2)A3)A4)

2、在32位機器上,有如下代碼:

[cpp] view plaincopy

char array[] = "abcdefg";

printf("%d\n",sizeof(array)); // 8

char p = "abcdefg";

printf("%d\n",sizeof(p)); // 4

void func(char p[10])

{

printf("%d\n",sizeof(p)); // 4

}

void func(char (&p)[10])

{

printf("%d\n",sizeof(p)); // 10

}

int main(void)

{

printf("%d\n",sizeof(char[2])); // 2

printf("%d\n",sizeof(char&)); // 1

return 0;

}

其輸出結果依次為:

A、8 4 4 10 2 1

B、4 4 4 10 4 1

C、8 4 4 10 2 4

D、8 4 4 4 2 1

E、8 4 4 10 4 4

F、以上答案都不對

3、

[cpp] view plaincopy

CONTAINER::iterator iter , tempIt;

for(iter = cont.begin() ; iter != cont.end() ; )

{

tempIt = iter;

++iter;

cont.erase(tempIt);

}

假設cont是一個CONTAINER的示例,里面包含數個元素,那么當CONTAINER為:

1、vector

2、list

3、map

4、deque

會導致上面的代碼片段崩潰的CONTAINER類型是:

A、1,4 B、2,3 C、1,3 D、2,4

正確答案選擇A(第1個、第4個都是線性的類型存儲,所以會存在崩潰)

4、以下代碼

[cpp] view plaincopy

class classA

{

public:

classA()

{

clear();

}

virtual ~classA()

{

}

void clear()

{

memset(this , 0 , sizeof(this));

}

virtual void func()

{

printf("func\n");

}

};

class classB : public classA

{

};

int main(void)

{

classA oa;

classB ob;

classA pa0 = &oa;

classA pa1 = &ob;

classB pb = &ob;

oa.func(); // 1

ob.func(); // 2

pa0->func(); // 3

pa1->func(); // 4

pb->func(); // 5

return 0;

}

A、func func 執(zhí)行出錯 執(zhí)行出錯 func

B、執(zhí)行出錯 func 執(zhí)行出錯 執(zhí)行出錯 func

C、執(zhí)行出錯 執(zhí)行出錯 執(zhí)行出錯 執(zhí)行出錯 執(zhí)行出錯

D、func func func func func

E、func func 執(zhí)行出錯 func func

F、以上選項都不對

熱門推薦

最新文章