转载自 http://blog.csdn.net/wanglongfei_hust/article/details/10041337

我的答案与解析:

1. D  2. C  3. B  4. A  5. D  6. C  7. A

8. C

我们可以把12个鸡蛋分成三堆,每堆4个。首先,我们命名那三堆分别叫A、B、C。

一、 如果A=B,表示坏的鸡蛋在C里面,我们命名C里面的四个鸡蛋分别为c1、c2、c3、c4。所以,如果想找到坏的鸡蛋,即先从C挑出两个(称其为c1、c2)出来秤。

1. 若c1=c2,即表示坏的鸡蛋在c3或c4中。

1)这时再挑出其中一个(假设为c3)与A或者B中的任意一个鸡蛋秤。

如果等重,即表示c4是坏鸡蛋;

若不等重,即表示c3是坏鸡蛋。

2. 若c1不等于c2,即表示这两个鸡蛋有一个是坏的。

2)这时挑c1与A或者B中的任意一个鸡蛋秤。

如果等重,即表示c2是坏鸡蛋;

如果不等重,即表示c1是坏鸡蛋。

二、 如果A不等于B,即表示坏鸡蛋在A或者B中。所以,我们可以先将A分成两堆,再进行秤。如果等重,表示坏鸡蛋在B中。如果不等重,表示坏鸡蛋在A中。如果要在3次成功找到坏鸡蛋,此时只有一次可以测量的机会了,且不知道坏鸡蛋的轻重,故怎么分是个重要的课题。

首先,将A、B分别标号为a1、a2、a3、a4,及b1、b2、b3、b4。

再来,假设A>B(B>A情况一样)。

1. 故若a1+a2+b1>a3+a4+b2,则有两种可能。

1). a1+a2=a3+a4,而b1>b2,表示B含有坏鸡蛋且较轻,故b2是坏鸡蛋;

2). a1+a2>a3+a4,而b1=b2,表示A中含有坏鸡蛋,且坏鸡蛋较重,故a1或a2中其中一个是坏鸡蛋。

因此要将a1和a2秤重,若等重,即表示b2是坏鸡蛋。若不等重,则较重者为坏鸡蛋。

2. 若a1+a2+b1=a3+a4+b2,即表示坏鸡蛋在B中且较轻。如此就只剩下b3和b4。再将b3和b4秤重,看哪个轻,即为坏鸡蛋。

总之,秤重3次,第一次秤重A和B,当A与B不相等时,第二次秤重a1+a2+b1与a3+a4+b2,当a1+a2+b1与a3+a4+b2不相等时,第三次秤重a1与a2.

9. B  10. A  11.C  12.A  13.C  14.B  15.D  18.D  21.B

22.D

堆都是动态分配内存的,没有静态分配内存的;栈有两种分配内存方式,动态和静态。

23.C  24.A  25.C

26.C

[cpp] view plaincopy
  1. #include <iostream>
  2. using namespace std;
  3. int foo(int& nParam)
  4. {
  5. nParam = 10;
  6. return -1;
  7. }
  8. int main()
  9. {
  10. int nTom = 0;
  11. const unsigned int uJerry = 10;
  12. nTom = foo(nTom);
  13. while (nTom < uJerry)
  14. {
  15. nTom++;
  16. }
  17. if (nTom > uJerry)
  18. {
  19. nTom = 100;
  20. }
  21. if (nTom == uJerry)
  22. {
  23. nTom = 200;
  24. }
  25. cout<<nTom<<endl;   // 100
  26. system("pause");
  27. return 0;
  28. }

27.A

[cpp] view plaincopy
  1. #include <iostream>
  2. using namespace std;
  3. class Base
  4. {
  5. public:
  6. Base()
  7. {
  8. printf("Base Ctor.");
  9. foo();
  10. }
  11. ~Base()
  12. {
  13. printf("Base Dtor.");
  14. foo();
  15. }
  16. virtual void foo()
  17. {
  18. printf("foo Base.");
  19. }
  20. };
  21. class Derived : public Base
  22. {
  23. public:
  24. Derived()
  25. {
  26. printf("Derived Ctor.");
  27. foo();
  28. }
  29. ~Derived()
  30. {
  31. printf("Derived Dtor.");
  32. foo();
  33. }
  34. virtual void foo()
  35. {
  36. printf("foo Derived.");
  37. }
  38. };
  39. int main()
  40. {
  41. Base *p = new Derived();
  42. delete p;
  43. printf("\n");
  44. system("pause");
  45. return 0;
  46. }
  47. // Base Ctor.foo Base.Derived Ctor.foo Derived.Base Dtor.foo Base.

因为有delete操作,所以会调用析构函数;又因为析构函数不是虚函数,所以只调用基类的析构函数。

28.C  29.C

30.C

[cpp] view plaincopy
  1. #include <iostream>
  2. using namespace std;
  3. unsigned short hash1(unsigned short key)
  4. {
  5. return (key << 8 >> 8) % 256;
  6. }
  7. int main()
  8. {
  9. unsigned short a = 16;
  10. unsigned short b = 256;
  11. cout<<hash1(a)<<endl;   // 16
  12. cout<<hash1(b)<<endl;   // 0
  13. system("pause");
  14. return 0;
  15. }

31.B

地址总线决定逻辑内存大小;

32.D

33.A

http://lakebroad.blogbus.com/logs/2218104.html

fork系统调用产生一个新的进程, 叫子进程, 是调用进程的一个复制品. 调用进程叫父进程, 子进程继承了父进程的几乎所有的属性:

. 实际UID,GID和有效UID,GID.
. 环境变量.
. 附加GID.
. 调用exec()时的关闭标志.
. UID设置模式比特位.
. GID设置模式比特位.
. 进程组号.
. 会话ID.
. 控制终端.
. 当前工作目录.
. 根目录.
. 文件创建掩码UMASK.
. 文件长度限制ULIMIT.
. 预定值, 如优先级和任何其他的进程预定参数, 根据种类不同决定是否可以继承.
. 还有一些其它属性.
但子进程也有与父进程不同的属性:
. 进程号, 子进程号不同与任何一个活动的进程组号.
. 父进程号.
. 子进程继承父进程的文件描述符或流时, 具有自己的一个拷贝并且与父进程和其它子进程共享该资源.
. 子进程的用户时间和系统时间被初始化为0.
. 子进程的超时时钟设置为0.
. 子进程不继承父进程的记录锁.
. pending signals 也不会被继承。 
linux下fork的实现是copy-on-write,也就是子进程与父进程初始时只有页表和task structure不同。

34.C

当第一个fork返回父进程号的时候,后面那个fork会执行;当第一个fork返回子进程号的时候,后面那个fork不会执行。

35.没有正确答案,应该是6次缺页。  36.B  37.A  38.C  39.B  40.C  41.A  42.B  43.C  44.D  45.A

奇虎360 2013校园招聘笔试题相关推荐

  1. 最强大脑 奇虎360 2017校园招聘笔试题

    题目:最强大脑  时间限制:C/C++语言 1000MS:其他语言 3000MS  内存限制:C/C++语言 65536KB:其他语言 589824KB  题目描述:  小B乘火车和朋友们一起在N市到 ...

  2. 360 2013校园招聘笔试题(含参考答案)

    360 2013校园招聘笔试题(含参考答案) 参考答案: 1.D  5*5*5=125 2.C  排除法 3.A  仅个人意见 4.A 5.D   ABC三语句一定保留,D不确定,EF一定删除 6.不 ...

  3. 网易2013校园招聘笔试题集锦

    第一部分(必做):计算机基础类 (所有的选择题都是多项选择) 1.假设进栈次序是e1, e2, e3, e4,那可能的出栈次序是() A.e2, e4, e3, e1 B.e2, e3, e4, e1 ...

  4. 奇虎360 2014校园招聘面试

    面试时间:2013-10-29 下午4:45 到 晚上7点半 面试地点:360大厦,酒仙桥路6号院2号楼 面试职位:服务器端研发工程师 面试形式:一对一,聊天+写代码 面试题目: 1.C和C++ ● ...

  5. 奇虎360 2015校园招聘笔试编程题

    题目一: 写一个函数,根据两文件的绝对路径算出相对路径. 如a="/qihoo/app/a/b/c/d/new.c",b="/qihoo/app/1/2/test.c&q ...

  6. 微软2013校园招聘笔试题

    1.       数据库 基于某个条件选出一个订单列表,考的是最基本的数据库语言select * from * where * 解: 详见http://blog.csdn.net/zephyr_be_ ...

  7. IGT 2013校园招聘 笔试题

    (1)RGB排序,一个字符串,里面只有三种字符R G B,所有的R都在G的前面,所有的G都在B的前面.将给定字符串按照此规律排序.要求不允许用辅助空间,复杂度控制在O(N).遍历一遍就排好序. 这道题 ...

  8. 腾讯2013校园招聘笔试题

    1.生产者消费者问题,信号量 2.深度优先遍历二叉树 4.Belady 5.进程调度 6.数组最长子序列和 7.数组最长递增子序列 8.fork();函数 9.n个数进栈,出栈方式有多少种(卡特兰数) ...

  9. 小米2013校园招聘笔试题

    题目:一个数组里,除了三个数是唯一出现的,其余的都出现偶数个,找出这三个数中的任一个.比如数组元素为[1, 2,4,5,6,4,2],只有1,5,6这三个数字是唯一出现的,我们只需要输出1,5,6中的 ...

最新文章

  1. 【MySQL】MySQL的事务
  2. ofbiz之entity 实体解析 扩展 视图 复合列写法
  3. servlet——请求乱码问题解决
  4. python 中 pynlpir错误 Cannot Open Configure file pynlpir解决
  5. RAC+单实例DATAGUARD 配置
  6. TestFlight
  7. java项目如何单元测试_大家java web项目开发做单元测试吗?
  8. 局域网限制网速软件_大文件传输工具,比微信、QQ文件传输还好用的传输软件,关键还不限速!...
  9. 防止 重复重建相同的表
  10. Android开发笔记(一百一十)使用http框架上传文件
  11. 设计模式学习笔记之二:观察者模式
  12. 测试h265和h264的编码效果
  13. Hive安装详细步骤
  14. javaEE学习笔记—————利用代理模式和过滤器增强对象功能完成敏感词汇过滤功能
  15. 第二届广东省大学生网络攻防大赛 simple_re
  16. 启动Kettle时报错找不到文件javaw.exe
  17. xp系统服务器找不到打印机无法连接失败,xp系统打印机共享提示连接失败的解决方法...
  18. java.io的缓冲流、转换流、序列化流
  19. 如何将多个mp3文件合并成一个?
  20. 拆解老式电饭锅限温器并验证其原理

热门文章

  1. apache中配置404错误页的方法
  2. 整数平方根的计算(一)
  3. axios库读不到cookie_axios客户端无法存储cookie
  4. excel随机数_原来Excel是个很好用的点名软件
  5. 基于python的土壤细菌在kobas库的功能预测代码
  6. 多传感器融合定位十五-多传感器时空标定(综述)
  7. CentOS7.2时间不正确
  8. 我的CentOS 7 U盘安装之路 (Win 8.1 Profession + CentOS 7双系统)
  9. Android蓝牙开发的各种坑
  10. 软件加密系统Themida应用程序保护指南(六):XBundler