阿里巴巴2012校园招聘笔试题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、有一个虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页?

A、7

B、8

C、9

D、10

2、设有一个顺序栈S,元素s1、s2、s

3、s

4、s

5、s6依次进栈,如果6个元素的出栈顺序为s2、s3、s4、s

6、s5、s1,则顺序栈的容量至少应为多少?

A、2

B、3

C、4

D、5

3、下列关于文件索引结构的叙述中,哪一个是错误的?

A、采用索引结构,逻辑上连续的文件存放在连续的物理块中

B、系统为每个文件建立一张索引表

C、索引结构的优点是访问速度快,文件长度可以动态变化

D、索引结构的缺点是存储开销大

4、【0、2、1、4、3、9、

5、8、

6、7】是以数组形式存储的最小堆,删除堆顶元素0后的结果是()

A、【2、1、4、3、9、5、8、6、7】

B、【1、2、5、4、3、9、8、6、7】

C、【2、3、1、4、7、9、5、8、6】

D、【1、2、5、4、3、9、7、8、6】

5、某页式存储管理系统中,地址寄存器长度为24位,其中页号占14位,则主存的分块大小是()字节。

A、10

B、2^10

C、2^14

D、2^24

6、在一个长为33厘米的光滑凹轨上,在第3厘米、第6厘米、第19厘米、第22厘米、第26厘米处各有一个钢珠,凹轨很细,不能同时通过两个钢珠,开始时,钢珠运动方向是任意的。两个钢珠相撞后,以相同速度反向运动。假设所有钢珠初始速度为每秒运动1厘米,那么所有钢珠离开凹轨的最长可能时间是()

A、30

B、26

C、38

D、33

7、std::vector::iterator重载了下面哪些运算符?

A、++

B、>>

C、*(前置)

D、==

8、下列运算符,在C++语言中不能重载的是()

A、*

B、?:

C、::

D、delete

9、在排序方法中,元素比较次数与元素的初始排列无关的是()

A、Shell 排序

B、归并排序

C、直接插入排序

D、选择排序

10、给定如下代码: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、与编译器相关

10、给出以下定义,下列哪些操作是合法的?

const char *p1 = "hello";

char* const p2 = "world";

A、p1++

B、p1[2]='w';

C、p2[2]='l';

D、p2++

11、假设在n进制下,下面的等式成立,n值是()567*456=150216

A、9

B、10

C、12

D、18

假设是X进制,则567=7+6*X+5*X^2,456=6+5*X+4*X^2,所以564*456=(7+6*X+5*X^2)*(6+5*X+4*X^2)而150216=6+X+2*X^2+5*x^4+X^5,由于567*456=150216,则

6+X+2*X^2+5*x^4+X^5=(7+6*X+5*X^2)*(6+5*X+4*X^2),最后解出来X=18

12、关于struct和class,下列说法正确的是()

A、struct的成员默认是public,class的成员默认是private

B、struct不能继承,class可以继承

C、struct可以有无参构造函数

D、struct的成员变量只能是public

若不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理;都可使用public/private/protected修饰符,都可以有无参构造函数

13、定义一个函数指针,指向的函数有两个int形参并且返回一个函数指针,返回的指针指向一个有一个int形参且返回int的函数?

A、int (*(*F)(int, int))(int)

B、int (*F)(int, int)

C、int (*(*F)(int, int))

D、*(*F)(int, int)(int)

14、声明一个指向含有10个元素的数组的指针,其中每个元素是一个函数指针,该函数的返回值是int,参数是int*,正确的是()

A、(int *p[10])(int*);

B、int [10]*p(int *);

C、int (*(*p)[10])(int *);

D、int ((int *)[10])*p;

E、以上选项都不正确

应该是int (*p[10])(int*);

15、一个栈的输入序列为123.....n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()

A、不确定

B、n-i+1

C、i

D、n-i

16、下列代码编译时会产生错误的是()

1.#include

ing namespace std;

3.struct Foo

4.{

5. Foo() { }

6. Foo(int) { }

7.void fun() { }

8.};

9.int main(void)

10.{

11. Foo a(10); //语句1

12. a.fun(); //语句2

13. Foo b(); //语句3

14. b.fun(); //语句4

15.return 0;

16.}

A、语句1

B、语句2

C、语句3

D、语句4

17、在32位机器上,下列代码中

#pragma pack(2)

∙class A

∙{

∙int i;

∙union U

∙ {

∙char buff[13];

∙int i;

∙ }u;

∙void foo() { }

∙typedef char* (*f)(void*);

∙enum{red, green, blue} color;

∙}a;

sizeof(a)的值是()

A、20

B、21

C、22

D、24

E、非以上选项

18、下面描述中,错误的是()

A、基类定义的public成员在公有继承的派生类中可见,也能在类外被访问

B、基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问

相关文档
最新文档