招聘笔试题

阿里巴巴招聘研发工程师笔试题和面试题答案(一)

如下为大家分享是一套阿里巴巴招聘研发工程师笔试题,欢迎大家收藏。
一、单选题(前10题,每题2分;后10题,每题3分;共50分。选对得满分,选错倒扣1分,不选德得0分)

1.假设一个主机的IP地址为192.168.5.121,而子网掩码为255.255.255.248。那么该主机的网络号部分(包括子网号部分)为 。

A. 192.168.5.12 B. 192.168.5.121 C. 192.168.5.120 D.192.168.5.32

2.64位系统上,定义变量inta[2][3]占据 字节。

A.4 B.12 C. 24 D.48

3.Linux中使用df –h/home和du –sh/home所查看到的已使用的磁盘容量不同,可能的原因是 。

A.命令不同,所以结果肯定不同 B.两个命令所用的参数有问题

C.运行中的进程打开文件被删除导致 D. Linux的特性导致的

4.一个C语言程序在一台32位及其上运行。程序中定义了三个变量xyz,其中x和z是int型,y为short型。当x=127,y=-9时,执行赋值语句z=x+y后,xyz的值分别是 。

A. x=0000007FH, y=FFF9H, z=00000076H

B. x=0000007FH, y=FFF9H, z=FFFF0076H

C. x=0000007FH, y=FFF7H, z=FFFF0076H

D. x=0000007FH, y=FFF7H, z=00000076H

5.有如下数组定义,

int [][] myArray = new int [3][] { new int[3]{5, 6, 2},

new int[5]{6, 9, 7, 8, 3},

new int[2]{3,2}};

则,myArray[2][2]的值是 。

A. 9 B. 2 C. 6 D.越界

6.快速排序的期望运行时间复杂度是 。

A. O(n2) B. O(nlogn) C. O(n) D.O(2n)

7.在一个长度为n的顺序表中删除第i个元素,要移动 个元素。如果在第i个元素前插入一个元素,要后移 个元素。

A. n-i, n-i+1 B. n-i+1, n-i C. n-i, n-i D. n-i+1, n-i+1

8.下面C++程序的输出是 。

void f(char x)

{

x++;

x = ‘a’;

}

int main()

{

char str [ sizeof (“hello”)];

strcpy( str, “hello”);

f(str);

cout << str;

return 0;

}

A. hello B. hallo C. allo D.以上都不是

9.有以下程序,其执行结果是 。

char fun(char x, char y)

{

if(x) return y;

}

int main()

{

int a = ‘0’, b = ‘1’, c = ‘2’;

printf(“%c\n”, fun(fun(a, b), fun(b, c)));

}

A.函数调用出错 B.2 C.0 D.1

10.当n=6时,下列函数的返回值是 。

int foo (int n)

{

if(n <= 2) return n;

return foo(n-1) + foo(n-2);

}

A.1 B. 8 C. 13 D.21

(以下每题3分)

大家都在看