招聘笔试题

完美世界笔试题和面试题答案(完整版)(一)

小编如下为大家分享的是完美世界的完整版笔试题,大家敬请收藏和练习!
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 执行出错 执行出错 func

B、执行出错 func 执行出错 执行出错 func

C、执行出错 执行出错 执行出错 执行出错 执行出错

D、func func func func func

E、func func 执行出错 func func

F、以上选项都不对

大家都在看