阿里巴巴前端开发工程师实习生招聘-2017

单选题

1、关于c++的inline关键字,以下说法正确的是()

A、使用inline关键字的函数会被编译器在调用处展开

B、头文件中可以包含inline函数的声明

C、可以在同一个项目的不同源文件内定义函数名相同但实现不同的inline函数

D、定义在Class声明内的成员函数默认是inline函数

E、优先使用Class声明内定义的inline函数

F、优先使用Class实现的内inline函数的实现

2、对N个数进行排序,在各自最优条件下以下算法复杂度最低的是()

A、快速排序

B、堆排序

C、冒泡排序

D、插入排序

E、选择排序

F、归并排序

3、甲乙两个一样大小的杯子各自分别装着小于一半容积的水和酒精.现将甲杯子里的一部分水倒入乙杯子;之后将乙杯子的混合液倒入一些到甲杯子,此时甲杯子的液体恢复到最初的状态.假定水和酒精混合之后的体积等于混合之前的体积之和。 那么以下说法正确的是()

A、甲杯子里的酒精体积等于乙杯子里的水的体积

B、甲杯子里的酒精的体积等于乙杯子里的酒精的体积

C、甲杯子里的水的体积等于乙杯子里的酒精的体积

D、甲杯子里的水的体积等于乙杯子里的水的体积

E、甲杯子里的液体高于乙杯子里的液位

F、以上都不对

4、
main()
{
    char*a[]={"work","at","alibaba"};
    char**pa=a;
    pa++;
    printf("%s",*pa);
}

下列程序的执行结果是()

Aat
Batalibaba
Cork
Dorkatalibaba
E、编译错误
F、运行溢出

5、一个黑盒子里有若干红球和黑球,随机取出一个球是红球的概率是p.现在从黑盒子中拿出等量的红球和黑球后,随机取出一个球是红球的概率是q,如果p<q,那么以下说法正确的是()

A、最初红球的个数小于黑球的个数

B、最初红球的个数大于黑球的个数

C、最初红球的个数是黑球的的2倍

D、最初红球的个数是黑球的1/2

E、无法判断最初红球和黑球谁多谁少

6、以下二叉树的后序遍历结果是()

A(ABCDEF)
B(ABDECF)
C(FCEDBA)
D(DEBFCA)
E(FEDCBA)
F(EDBFCA)

7、在TCP/IP建立连接过程中,客户端和服务器端的状态转移说法错误的是?

A、经历SYN_RECV状态
B、经历SYN_SEND状态
C、经历ESTABLISHED状态
D、经历TIME_WAIT状态
E、服务器在收到syn包时将加入半连接队列
F、服务器接受到客户端的ack包后将从半连接队列删除

8、假设在n进制下,下面的等式成立,n值是()240*12=2880

A、19

B、18

C、17

D、16

E、15

F、以上都对

9、下面关于系统调用的描述中,错误的是()

A、系统调用把应用程序的请求传输给系统内核执行

B、系统调用中被调用的过程运行在"用户态"中

C、利用系统调用能够得到操作系统提供的多种服务

D、是操作系统提供给编程人员的接口

E、系统调用给用户屏蔽了设备访问的细节

F、系统调用保护了一些只能在内核模式执行的操作指令

10、关于linux的I/O复用接口select和epoll,下列说法错误的是()

A、select调用时会进行线性遍历,epoll采用回调函数机制,不需要线性遍历

B、select的最大连接数为FD_SETSIZE

C、select较适合于有大量并发连接,且活跃链接较多的场景

D、epoll较适用于有大量并发连接,但活跃连接不多的场景

E、epoll的效率不随FD数目增加而线性下降

F、epoll通过共享存储实现内核和用户的数据交互

11、有无限的水源,一个5L无刻度桶和一个7L无刻度桶,则只利用这两个无刻度桶,将不能获得()L水

A、2

B、3

C、6

D、8

E、11

F、以上均能获得

12、7的2014次方这个整数的十位数字数是()

A、0

B、1

C、3

D、4

E、5

F、7

13、在100-999这900个自然数中,若将组成这个数的三个数字认为是三条线段的长度,那么是三条线段组成一个等腰三角形(包括等边)的共有()个.

A、45

B、91

C、121

D、142

E、156

F、165

14、下面哪个不是线性表?

A、循环链表

B、队列

C、栈

D、关联数组

E、空字符串数组

F、双向链表

15、下面的哪种排序算法在算复杂度平均不是O(nlogn)的?

A、快速排序

B、桶排序

C、合并排序

D、二叉树排序树排序

E、堆排序

16、某创业团队的一个很大的办公室(障碍和遮挡可以忽略)里有一个WIFI源,有1个工位由于距离WIFI源太远而接收不到信号.为了提高该工位的联网质量,准备在工位和WIFI信号源之间安装一个无线AP(相当于中继的,可以中转该工位上的计算机和WIFI之间的信号).只考虑从WIFI发出的信号,如果AP离WIFI源太近,就起不到中继的作用,如果AP离工位太远则可能连不上WIFI.因此AP有一个最佳的安装位置,那么关于AP最佳安装位置的说法正确的是()

A、如果WIFI源功率越大,那么AP最佳安装位置越靠近WIFI源

B、如果WiFi源功率越大,那么AP最佳的安装位置越靠近工位

C、WIFI源功率和AP最佳安装位置无关.

D、AP最佳安装位置在工位和WIFI信号源连线之外

E、AP最佳安装位置在工位和WIFI信号源连线中点

F、以上说法都不对

17、有100个金币,分给10个人.第一个金币等概率地分给10个人之一.之后的每一个金币分配给第K个人的概率正比于这个人已经持有的金币数+1.在这样的分配机制下,关于每个人最终的金币个数的分布的说法错误的是()

A、每个人得到的金币的个数的期望是相等的

B、每个人的金币个数接近均匀分布

C、第一个金币给哪个人,哪个人的最终金币个数的期望就会更大

D、在中间的某个阶段金币个数越多的人,未来获得金币的可能性越大

18、在自由交换的情况下,只考虑偏好,小张用自己的小刀换了小王的橡皮.关于这个交换以下说法错误的是:

A、小张觉得橡皮比小刀更好

B、小王觉得小刀比橡皮更好

C、小张和小王总的财富里没有发生变化

D、小张和小王的效用值增加了

E、如果把小王换成小吴,那么这个交换可能就不会发生

F、小刀和橡皮等值

19、
struct st
{
    int *p;
    int i;
    char a;
};
int sz=sizeof(struct st);

如下C程序,在64位处理器上运行后sz的值是什么?

A24
B20
C16
D14
E13
F12
20、
#include <iostream>       
#include <vector>
using namespace std;
int main(void)
{
    vector<int>array;
    array.push_back(100);
    array.push_back(300);
    array.push_back(300);
    array.push_back(300);
    array.push_back(300);
    array.push_back(500);
    vector<int>::iterator itor;
    for(itor=array.begin();itor!=array.end();itor++)
    {
        if(*itor==300)
        {
            itor=array.erase(itor);
        }
    }
    for(itor=array.begin();itor!=array.end();itor++)
    {
            cout<<*itor<<"";
    }
  return 0;
}
下面这个代码输出的是()

A、100 300 300 300  300 500

B、100 3OO 300 300 500

C、100 300 300 500

D、100 300 500

E、100 500

F、程序错误

21、下面关于一个类的静态成员描述中,不正确的是()

A、静态成员变量可被该类的所有方法访问

B、该类的静态方法只能访问该类的静态成员函数

C、该类的静态数据成员变量的值不可修改

D、子类可以访问父类的静态成员

E、静态成员无多态特性

参考答案

1D  2D  3A  4A  5B  6D 7D  8F  9B  10C  11F  12D  13F  14D  15B  16B  17B  18F  19C  20C  21C

个人资料
游弋的蔷薇
等级:7
文章:27篇
访问:3.8w
排名: 10
上一篇: 阿里巴巴前端工程师笔试-2016年
下一篇: 百度研发工程师笔试题-2016
猜你感兴趣的圈子:
阿里巴巴笔试面试圈
标签: 杯子、itor、wifi、金币、ap、面试题
隐藏