用户名: 密码: 企业 个人
当前位置:89学习网范文文章招聘应聘笔试创新工场2017年校园招聘笔试试题» 正文

创新工场2017年校园招聘笔试试题

[05-15 14:50:43]   来源:http://www.89xue.com  笔试   阅读:90
摘要: 一, 选择题1,求z的结果[cpp] view plaincopyprint?#define N 3#define Y(n) ((N+1)*n)z = 2*(N+Y(5+1));#define N 3#define Y(n) ((N+1)*n)z = 2*(N+Y(5+1));解答:482,有关多线程,多进程的描述错误的是A, 子进程获得父进程的数据空间,堆和栈的复制品B, 线程可以与同进程的其他线程共享数据,但是它拥有自己的栈空间且拥有独立的执行序列C, 线程执行开销小,但是不利于资源管理和保护D, 进程适合在SMP机器上进行,而线程则可以跨机器迁移解答:D3,[cpp] view plaincopyprin。
创新工场2017年校园招聘笔试试题,标签:笔试范文,http://www.89xue.com

   一, 选择题

  1,求z的结果

  [cpp] view plaincopyprint?

  #define N 3

  #define Y(n) ((N+1)*n)

  z = 2*(N+Y(5+1));

  #define N 3

  #define Y(n) ((N+1)*n)

  z = 2*(N+Y(5+1));

  解答:48

  2,有关多线程,多进程的描述错误的是

  A, 子进程获得父进程的数据空间,堆和栈的复制品

  B, 线程可以与同进程的其他线程共享数据,但是它拥有自己的栈空间且拥有独立的执行序列

  C, 线程执行开销小,但是不利于资源管理和保护

  D, 进程适合在SMP机器上进行,而线程则可以跨机器迁移

  解答:D

  3,

  [cpp] view plaincopyprint?

  struct s

  { int x:3;

  int y:4;

  int z:5;

  double a;

  }

  struct s

  { int x:3;

  int y:4;

  int z:5;

  double a;

  }

  求sizeof(s)

  解答:

  16

  :是取位的作用,前三个变量是为两个字节,最后double变量是8个字节,

  结构体以8字节对齐,则为16字节。

  4,序列{2,1,4,9,8,10,6,20}是某排序算法第二轮排序的结果,则该算法只能是

  A快速排序 B冒泡排序

  C选择排序 D插入排序

  解答:A

  5,我们需要监听一个事件状态,让它在状态发生改变时主动发出通知,请问需要哪种设计模式?

  A装饰者模式 B建造者模式

  C创新工场模式 D观察者模式

  解答:D

  6,有2012瓶矿泉水,其中有一瓶有毒,请问需要多少只老鼠才能一次性找到有毒的矿泉水?

  解答:11只

  二, 问答题

  1, 有0-n这n+1个数,但是其中丢了一个数,请问如何找出丢了哪个数?

  解答:

  求这n个数的sum,然后计算n(n+1)/2-sum可得。

  2, 解释

  [cpp] view plaincopyprint?

  #typedef char (*func)(int,char*)

  #typedef char (*func)(int,char*)

  解答:

  定义了一个函数指针的数据类型;

  该数据类型可以用来定义函数指针;

  定义的函数指针指向的函数的参数为

  [cpp] view plaincopyprint?

  (int,char*)

  (int,char*)

  返回值为char型。

  3, 求输出结果

  [cpp] view plaincopyprint?

  int a[2][2][3]= { {{1,2,3},{4,5,6}},{{7,8,9},{10,11,12}}};

  int *ptr=(int *)(&a+1);

  printf(“%d %d”, *(int*)(a+1), *(ptr-1));

  int a[2][2][3]= { {{1,2,3},{4,5,6}},{{7,8,9},{10,11,12}}};

  int *ptr=(int *)(&a+1);

  printf(“%d %d”, *(int*)(a+1), *(ptr-1));

  解答:

  7 12 (已修定)

  考察多级指针,一定要明确指针指向的是什么,才能知道它加1后跳过了多少字节。

  &a是个四级指针,指向的是a这样的数组,所以它加1,就会跳过整个数组。

  4,求输出结果

  [cpp] view plaincopyprint?

  #include

  using namespace std;

  class A

  {

  public:

  virtual void print()

  { cout << "A::print()" <

  };

  class B: public A

  {

  public:

  virtual void print()

  { cout << "B::print()" <

  };

  class C: public A

  {

  public:

  virtual void print()

  { cout << "C::print()" <

  };

  void print(A a)

  {

  a.print();

  }

  void main()

  {

  A a,*aa,*ab,*ac;

  B b;

  C c;

  aa=&a;

  ab=&b;

[1] [2] [3]  下一页


Tag:笔试笔试范文招聘应聘 - 笔试
上一篇:网通经典笔试题