logo资料库

历年腾讯招聘考试面试试题汇总.doc

第1页 / 共28页
第2页 / 共28页
第3页 / 共28页
第4页 / 共28页
第5页 / 共28页
第6页 / 共28页
第7页 / 共28页
第8页 / 共28页
资料共28页,剩余部分请下载后查看
历年腾讯招聘考试面试试题汇总
历年腾讯招聘考试面试试题汇总 1、请定义一个宏,比较两个数 a、b 的大小,不能使用大于、小于、if 语句 #define BIG_THAN(a, b) (((b) – (a)&(0x1<<31))>>31) 2、如何输出源文件的标题和目前执行行的行数 int line = __LINE__; char *file = __FILE__; cout < <"file name is " < <(file) < <",line is " <
程序填空(40) 1.(20) 4 空 x5 不使用额外空间,将 A,B 两链表的元素交叉归并 typedef int dataType; typedef struct node { dataType data; struct node *next; }Node; typedef Node *List; List connect(List aList, List bList) { Node *p, *pNext; Node *q, *qNext; p = aList; q = bList; pNext = p->next; qNext = q->next; if(aList==null) return bList; if(bList==null) return aList; while(q->next != null&&p->next!=null) { p->next= q->next; p=pNext;
pNext=pNext->next; q=qNext; qNext=qNext->next; q->next=p; } If(qNext==null) qNext->next=pNext; If(pNext==null) pNext->next=qNext; return aList; } 2.(20) 4 空 x5 MFC 将树序列化 转存在数组或 链表中! //////////////////////////////////////////////////// 基本都是基础题目,看来腾讯不准备放弃那些有思想但是 还没有开始苦练基本功的人,只涉及到语言问题和简单的 数据结构,其他的操作系统,编译原理,离散数学,软件 工程,计算机原理,体系结构等等无一涉及,题目很多, 有 1 个选择题想不来起来是什么了,题号不与原试题相符 希望师弟师妹可以探讨探讨答案,从中学到笔试的经验 声明:以下问题仅供本校园网校内师弟师妹为了考察自己学习的参考,不要传播 1 计算 a^b << 2 (运算符优先级问题) 2 根据先序中序求后序 3 a[3][4]哪个不能表示 a[1][1]: *(&a[0][0]) *(*(a+1)+1) *(&a[1]+1) *(&a[0][0]+4)
4 for(int i...) for(int j...) printf(i,j); printf(j) 会出现什么问题 5 for(i=0;i<10;++i,sum+=i);的运行结果 55 6 10 个数顺序插入查找二叉树,元素 62 的比较次数 7 10 个数放入模 10hash 链表,最大长度是多少 8 fun((exp1,exp2),(exp3,exp4,exp5))有几个实参 9 希尔 冒泡 快速 插入 哪个平均速度最快 10 二分查找是 顺序存储 链存储 按 value 有序中的哪些 11 顺序查找的平均时间 12 *p=NULL *p=new char[100] sizeof(p)各为多少 13 频繁的插入删除操作使用什么结构比较合适,链表还是数组 14 enum 的声明方式 其他 1 个选择暂时想不起来了 大题: 1 把字符串转换为小写,不成功返回 NULL,成功返回新串 char* toLower(char* sSrcStr) { char* sDest= NULL; if( __1___) { int j; sLen = strlen(sSrcStr); sDest = new [_______2_____];
if(*sDest == NULL) return NULL; sDest[sLen] = '\0'; while(_____3____) sDest[sLen] = toLowerChar(sSrcStr[sLen]); } return sDest; } 2 把字符串转换为整数 例如:"-123" -> -123 main() { ..... if( *string == '-' ) n = ____1______; else n = num(string); ..... } int num(char* string) { for(;!(*string==0);string++) { int k; k = __2_____; j = --sLen; while( __3__) k = k * 10; num = num + k; }
return num; } 附加题: 1 linux 下调试 core 的命令,察看堆栈状态命令 2 写出 socks 套接字 服务端 客户端 通讯程序 3 填空补全程序,按照我的理解是添入:win32 调入 dll 的函数名 查找函数入口的函数名 找 到函数的调用形式 把 formView 加到 singledoc 的声明 将 singledoc 加到 app 的声明 4 有关系 s(sno,sname) c(cno,cname) sc(sno,cno,grade) 1 问上课程 "db"的学生 no 2 成绩最高的学生号 3 每科大于 90 分的人数 //////////////////////////////////////////////////////////////////// 试一共 60 分钟,分发试卷和收回试卷费时 5 分钟,实际考试时间 55 分钟。 选择题 36 道(都是 5 个选项的),计算题 14 道(一道题会有好几个问),题量比较大, 我还有最后两个空没填写,实在是没时间了~~ 题目考查的范围比较全面,但是有所侧重,例如:如果外汇相对于本国货币升值,一般 来说,本国的通货膨胀率将会怎样?下面就是 5 个选项。 总体来说,试题本身难度不大,但是很费时间,阅读的速度非常重要,逻辑判断的能力 要求很高,要求快速阅读、快速判断、快速计算,而且还不能粗心导致计算失误(我一般出 现的情况就是计算失误~~,希望这次不会出现~~) 腾讯这次的试卷可能字体印刷的比较小了,我的视力是 5.3 的,看上去不会有任何问题, 但是坐在我后面的老兄就不好了,完全是模糊的一片,不断的缩减和纸张之间的距离才能看 到,可能腾讯公司在这方面的成本应该适当放宽(也许也是一种测试吧,身体素质的测试~~) HR 说今天就会有面试通知出现,等待中…… 今天下午 3 点还有一个招商银行的面试,应聘的核心业务软件开发工程师,应该没有什 么问题的~~
11 月 5 日还有 KPMG 的笔试,按照我做的以前的笔试题目来说,很 Easy,全对~~但愿这 次也是这样~~ 如果幸运的话,如果和腾讯能够很好的契合的话,应该在一个周的时间里面就签约了, 大家保佑我吧。 有朋友问我,为什么不去 Google 或者微软这样的公司,却要去腾讯? 我的回答是:我个人的能力在 Google 或者微软这样的地方是没有太大竞争优势的,而 且我想做的事情并不是 Code Machine,我希望能够在我的市场洞察力下,依据市场数据做 出我的策略和 idea,然后利用我的技术背景将其实现为一个原型系统,经过 Team 和部门的 验证,最终与工程师们一起将其实现为公司的产品或者服务,这是一个从 idea 到 product 的过程,充满了创造的乐趣,充满了挑战,我就喜欢这样的感觉,而腾讯能够给我这样的环 境,我希望我能够在腾讯 5 个多亿的用户群上为公司做出一点贡献,也是一次次自身价值的 提升。 //////////////////////////////////////////////////////////////////////////// 由于近来有些人都问我腾讯笔试和面试到底是考什么,问什么,所以就灌下这篇水文,也算 是我自己复习一遍以及给有兴趣或者后来者嗤鼻一笑的机会:) 其实应聘内容也真的很难说清楚,而且我也不知道我所经历的是不是有代表性,何况我 还是找工作的新手(本科也没找过工作,之前也只是应聘过华为),所以如果下文有什么疏 漏之处,尽管踩我好了:) 1。笔试我想腾讯的笔试还是比较适中的,虽然广度与深度都不够,但是毕竟因为它只 是笔试,只是用来筛选面试者的,而不是象学术竞赛一样一战决胜负,何况它是笔试,所以 也就有笔试的局限性。(啊哦,是不是离题?)笔试主要是 C++的内容,然后还有一部分数 据结构、系统平台(WIN32 和 LINUX 都有)的编程知识(线程模型、共享内存、编译或对象 模型等)、JAVA(这次笔试 JAVA 有一题,是填写同步的关键字的,当然题目没有明明白白 告诉你写 synchronized 这个关键字啦,否则就要被人 BS 了,哈哈。好在 JAVA 下的同步基 本实现机制相当简洁,只要刚才那个关键字申明一下就可以了,学过 java 多线程模型的人 都应该知道填什么,可惜我那时我也拼写错误了,漏了一个字母。。。,好象是 5 分一题的, 损失不小哦)等。可以说还是比较有代表性的。
这里罗嗦几句, 有的人总是问为什么都考 C/C++,我想因为 C/C++才能比较好的表现出 你的编程的水平(包括风格、惯用法、技巧性、严谨性等),就象堆积木,给你不同形状的 积木越多,那你就越能堆出更多的造型。还有就是是 OOP(这里废话几句~~ OOP 思想很重要,记得当年初次接触 C++真的是只知其所然,而不知其所以然。特别是 “虚拟—virtual”这个词,可以说是最最核心的了,理解了它,你会觉得这个词实在太优 美了,哈哈~~你可以这样测试你自己的 OOP 能力,针对 OOP 的三个特点用程序写出对应的例 程,如果能够写得正确且健壮,那么应该也就什么问题了)做比较大的项目现在一般都采用 OOP 来实现的了(当然对于特殊的需求、环境和人除)。VB 和 DELPHI 虽然也很流行,一方 面是他们没有国际标准,其次是由于它太高级了,一些传统的编程技术被隐藏了,姑且不论 VB(6。0 以前)不支持 OOP,那就更难用它来考 OOP 了,DELPHI 支持 OOP,但是我想很多同 学都只是用它进行 OBP,而不是 OOP,所以。。。 至于 JAVA,我本人也很喜欢,而且怎么说,JAVA 也很接近 C++,何况其 API 也比 C/C++ Library 更规范、全面,所以使用起来很方便。但是正如考数学分析比考高等数学往往会加 深对数学的理解的道理一样,除此以外也有另一层寓意,假如你能徒手打败你的敌人,那么 再给你一把利剑,我想你会在更短的时间内结束战斗,呵呵。所以考 C/C++还是比较合适的, 公平是相对的。。。 2。一面面试其实也挺难说的,因为这个环节很灵活,也许在面试之前连面试官自己都 不知道他自己将要问什么,呵呵。这里也只是给出一个 case(归纳法不适用,呵呵)。一 面时,我只带了两页纸简历,到了面试地点,才发现很多人都是一叠资料的,有的人还不断 在复习资料。。。别提当时我有多狼狈了。。。 根据外貌和谈吐可以推断出一面面试官是一个前线的技术专家。面试时首先自我介绍, 我一向没刻意去背自我介绍,但是也事先想好了的。然后就是问你哪种编程技术比较拿手啊, 项目经验啊,我想关键是深度一定要够,一定要体现你的参与价值和收获,不管是开发过程 还是开发技术。面试时我分别从开发过程与开发技术两个方面说了两个项目,感觉面试官还 是接受了的,然后小部分技术细节,比如说在一个项目里面为了解决一个问题,你采取了什 么策略,采用了什么技术,这个可千万不能说错哦,不然你就是在自打嘴巴了。。。也许我 的笔试成绩还可以,所以语言层面的问题基本没有了。总结,这个面试官很实在,也相当和 蔼可亲。。。
分享到:
收藏