C笔试面试题(共11篇)
C笔试面试题 篇1
1 #include “filename.h”和#include 的区别?
答:#include “filename.h”表明该文件是用户提供的头文件,查找该文件时从当前文件
目录开始;#include 表明这个文件是一个工程或标准头文件,查找过程会检查预定义的目录。
2 头文件的作用是什么?
答:一、通过头文件来调用库功能。在很多场合,源代码不便(或不准)向用户公布,只要向用户提供头文件和二进制的库即可。用户只需要按照头文件中的接口声明来调用库功能,而不必关心接口怎么实现的。编译器会从库中提取相应的代码。
二、头文件能加强类型安全检查。如果某个接口被实现或被使用时,其方式与头文件中的声明不一致,编译器就会指出错误,这一简单的规则能大大减轻程序员调试、改错的负担
3 C++函数中值的传递方式有哪几种?
答:C++函数的三种传递方式为:值传递、指针传递和引用传递。
4 内存的分配方式的分配方式有几种?
答:一、从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量。
二、在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。
三、从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活,但问题也最多。交换两个数,不用第三块儿内存!请问怎么实现?现有12个小球,其中只有1个球与其它的球重量不同(即有11个球重量全相同),并且不知道这个跟其它球重量不同的球是重还是轻(跟其他11个重量相同的球相比而言),那么从这12个球中找出这个跟其它球重量不同的球.
C笔试面试题 篇2
品牌优势
拥有具有教学经验的机关、企事业单位退休及在职干部, 参与机关、企事业单位公务员、工作人员招录和面试工作的实操团队。
拥有行业内的顶级金牌讲师和各大高校行政管理、法律、经济等相关专业的优秀讲师团队。
拥有人力资源管理实战经验的国家、省市直科研单位从事行政管理、人力资源管理研究的高级咨询顾问团队。
多年坚持高薪聘请来自国家人社部、国家公务员局、中央党校、国家行政学院、北大、清华、人大、北师大、人民公安大学等单位的原命题、阅卷、面试考官等权威专家任教或教学指导。
针对性授课
才智教育中心公考研究室开展针对性培训, 学员可通过对数量关系、判断推理、言语理解、资料分析、常识判断以及申论理论的深刻学习, 提高理解、把握事物间量化关系的能力、分析推理的能力、对资料综合理解和分析加工的能力以及对政治、法律、经济、科技等方面知识的综合运用能力。申论应试中, 学员能够有较强的阅读理解能力、综合分析能力、提出问题和解决问题的能力以及文字表达能力。
报名热线:0371-86036855
0371-86036856
QQ:863396728
2012中国人寿笔试面试题参考 篇3
笔试是80道选择题 常识题较少,计算题较多,逻辑思维题多且稍难。类似公务员考试的行测时间是90分钟,比河北省的公务员考试题稍难。
面试题一共5道,进去之后先进行自我介绍,一定要好好准备,我当时答得时候就简单两句话,这样不太好。
接下来,第一道题是说 诚信的问题,你认为保险行业诚信重要吗?大概是这个意思,我记得不太清了。
第二道题是说假如你工作单位的人员每天重复相似的事,压力较大,每天有很多来人办理同样的事,你觉得应该怎么办?(大概意思是这样)
第三道题是农村参加保险的比例低于城市,你认为是什么原因?应该如何做?
第四道题主要是说人们对保险有偏见你应该如何去做,好像是这个意思,以身边的例子来说明。
第五道题是说管理和经营需要从细微做起,不能操之过急,盲目决策,老子说过“治理国家,若烹小鲜”你怎样看待这个话题?举例论述。(当时我是咋的,把老子的话听成了“治理国家,若烹小虾”嗨,结果只回答了做事要从小事做起,回来一查,原来是要从细微处着手,要仔细分析、观察、考虑,现在好后悔,真应该多看些书)
这只是其中一套题,不知道有几套题,仅供参考。谢谢欣赏!
笔试面试题―软件测试工程师 篇4
分析:考察线性表中顺序存储的特点,
答案:n-i+1,n-i
试题2.已知链表的头结点head,写一个函数把这个链表逆序。
分析:考察线性表中链式存储反转算法。
答案:
01. void List::reverse
02. {
03. list_node * p = head;
04. list_node * q = p->next;
05. list_node * r = NULL;
06. while(q){;
07. r= q->next;
08. q->next = p;
09. p= q;
10. q= r;
11. }
12. head->next = NULL;
13. head = p;
14. }
试题3.找出单向链表中的中间结点。
分析:两个指针,一个步长为1,另一个步长为2。步长为2的走到底后步长为1的正好到中间。
答案:
01. list_node * List::middleElement()
02. {
03. list_node * p = head;
04. list_node * q =head->next;
05. while(q){;
06. p= p->next;
07. if(q)q=q->next;
08. if(q)q=q->next;
09. }
10. }
试题4.如何检查一个单向链表上是否有环,
分析:同样两个指针,一个步长为1,另一个步长为2,如果两个指针能相遇则有环。
答案:
01. list_node * List::getJoinPointer()
02. {
03.
04. if(head == NULL ||head->next == NULL)return NULL;
05. list_node * one = head;
06. list_node * two =head->next;
07. while(one != two){
08. one =one->next;
09. if(two)two=two->next;
10. elsebreak;
11. if(two)two=two->next;
12. elsebreak;
13. };
14. if(one == NULL || two ==NULL)return NULL;
15. return one;
C语言面试编程题 篇5
#include
#include
typedef struct array1{
int ID;
struct array1* next;
}A;
typedef struct array2{
int ID;
int a;
int b;
int c;
}* B;
int main
{
A s1[15];
A* s2;
B s3;
for(int i=0;i<10;i++)
{
s1[i].ID=i+64;
}
s2=s1+3;
s3=(B)s2;
printf(”%d/n“,s3->b);
return 0;
C语言面试题大10 篇6
1.给两个数组和他们的大小,还有一动态开辟的内存,求交集,把交集放到动态内存dongtai,并且返回交集个数
long jiaoji(long* a[],long b[],long* alength,long blength,long* dongtai[])
2.单连表的建立,把“a”--“z”26个字母插入到连表中,并且倒叙,还要打印!
方法1:
typedef struct val
{ int date_1;
struct val *next;
}*p;
void main(void)
{ char c;
for(c=122;c>=97;c--)
{ p.date=c;
p=p->next;
}
p.next=NULL;
}
}
方法2:
node *p = NULL;
node *q = NULL;
node *head = (node*)malloc(sizeof(node));
head->data = “ ”;head->next=NULL;
node *first = (node*)malloc(sizeof(node));
first->data = “a”;first->next=NULL;head->next = first;
p = first;
int longth = “z” - “b”;
int i=0;
while ( i<=longth )
{
node *temp = (node*)malloc(sizeof(node));
temp->data = “b”+i;temp->next=NULL;q=temp;
head->next = temp; temp->next=p;p=q;
i++;
}
print(head);
3.可怕的题目终于来了
象搜索的输入信息是一个字符串,统计300万输入信息中的最热门的前十条,我们每次输入的一个字符串为不超过255byte,内存使用只有1G,
请描述思想,写出算发(c语言),空间和时间复杂度,
4.国内的一些帖吧,如baidu,有几十万个主题,假设每一个主题都有上亿的跟帖子,怎么样设计这个系统速度最好,请描述思想,写出算发(c语言),空间和时间复杂度,
#include string.h
main(void)
{ char *src=“hello,world”;
char *dest=NULL;
dest=(char *)malloc(strlen(src));
int len=strlen(str);
char *d=dest;
char *s=src[len];
while(len--!=0)
d++=s--;
printf(“%s”,dest);
}
找出错误!!
#include “string.h”
#include “stdio.h”
#include “malloc.h”
main(void)
{
char *src=“hello,world”;
char *dest=NULL;
dest=(char *)malloc(sizeof(char)*(strlen(src)+1));
int len=strlen(src);
char *d=dest;
char *s=src+len-1;
while(len--!=0)
*d++=*s--;
*d=“�”;
printf(“%s”,dest);
C笔试面试题 篇7
1. 起泡法对数组元素进行排序的思路是什么?你还知道哪些排序方法?
2. 在编写程序之前,你是否是先画出程序的流程图了?谈谈流程图对你在编程时的帮助,试写出对一列数用选择排序法进行升序排序的程序流程图。
3. 在c/c++中,谈谈对continue 与break 的区别。
4. 在处理动态链表时常常需要哪些函数?它们各自的功用是什么?可以用其它方式替代吗?
5. 在数组的存储中,对于稀疏矩阵是怎么样存储的?常采用什么样的结构?
6. 编程时,内存的分配方式有哪几种?分别有什么特点?
7. 请你谈谈指针除了在数组方面的优点外,还有什么其他的优点?也请你谈谈如何将指针与数组结合使用,以便最大限度地利用它们各自的长处。
8. 为了提高程序的效率,在编写程序时应注意那几个方面?
9. 一个大型软件的开发,应该包括哪些基本环节?当把一个比较大的工程,分为若干个比较小的工程时,该如何确保这些小的工程之间的联系不被破坏?
10. 在你所编写的程序中,对程序的调试一般需经过哪几个步骤?
电机问题:
1. 请你用矩阵型式表达一个二端口Pi型高通网络的电流和电压关系. 如将此网络扩展成四端口型Pi高通网络, 它的电流和电压关系又是怎样的?
2. 当两根直线电线靠近但不接触时, 它们的相互位置应该怎样才能使它们间的互感最小? 为什么?
3. 共轭匹配的目的是什么? 为什么能达到此目的? 微波电路中, 共轭匹配时反射系数最小吗? 为什么?
4. 模拟电路: 一般分析和设计都是在频域进行, 时域分析有什么用? 怎样进行两域间的转换? 当电路的工作波长和尺寸大小达到什么样的关系时, 分立元件电路开始不时用了?
5. 线性电路的线性体现在哪儿? 在什么情况下电压的输入输出关系不变? 输入电压变化后, 输出功率线性变化吗?
6. 测量电压时, 测量仪器的内阻应该怎样? 测电流时又该怎样? 为什么? 电磁测量时对探头又有什么要求?
7. 微波技术与天线: S-, T-, 和 ABCD 参数及他们之间的定义和相互间的转换? 什么是微波电路的端口, 终端, 传输线阻抗和传输系数? 匹配的目的和形式? 天线的主要形式和指标有哪些? 激励源应放在天线的什么位置? 使?霉哪些这一方面的设计分析软迹浚
8. 数字电路: 信号的完整性在数字通信中非常重要.在电路的具体实现上, 就是信号的rising time 和decaying time. 与这些时域指标相应的频域指标是什么? 除了电路自身的rising time 和decaying time外, 还有哪些因素会影响信号的完整性?
9. EDA: 它与CAD有多少区别? 为什么现在业界通常将CAD, CAE等归入EDA? 用过哪些这方面的软件? 比如电路布线(LAYOUT)软件等. 谈谈它们的主要功能和优缺点.
C/C笔试题目 篇8
答:从定义上来说:
重载:是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。
重写:是指子类重新定义复类虚函数的方法。
从实现原理上来说:
重载:编译器根据函数不同的参数表,对同名函数的名称做修饰,然后这些同名函数就成了不同的函数。
重写:当子类重新定义了父类的虚函数后,父类指针根据赋给它的不同的子类指针,动态的调用属于子类的该函数,这样的函数调用在编译期间是无法确定的(调用的子类的虚函数的地址无法给出)。
2. 多态的作用?
答:主要是两个:1)隐藏实现细节,使得代码能够模块化;扩展代码模块,实现代码重用;2)接口重用,为了类在继承和派生的时候,保证使用家族中任一类的实例的某一属性时的正确调用。
3. 分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句。
答:BOOL :if ( !a ) or if(a)
int :if ( a ==0)
float :const EXPRESSION EXP = 0.000001
if ( a < EXP && a >-EXP)
pointer : if ( a != NULL) or if(a == NULL)
4. 请说出const与#define 相比,有何优点?
答案:1) const 常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会产生意料不到的错误。
2) 有些集成化的调试工具可以对const 常量进行调试,但是不能对宏常量进行调试。
5.简述数组与指针的区别?
数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。指针可以随时指向任意类型的内存块。
(1)修改内容上的差别
char a = “hello”;
a[0] = ‘X’;
char *p = “world”; // 注意p 指向常量字符串
p[0] = ‘X’; // 编译器不能发现该错误,运行时错误
(2) 用运算符sizeof 可以计算出数组的容量(字节数)。sizeof(p),p 为指针得到的是一个指针变量的字节数,而不是p 所指的内存容量。C++/C 语言没有办法知道指针所指的内存容量,除非在申请内存时记住它。注意当数组作为函数的参数进行传递时,该数组自动退化为同类型的指针。
char a = “hello world”;
char *p = a;
cout< cout< 计算数组和指针的内存容量
voidFunc(char a[100])
{
C笔试面试题 篇9
本试题仅用于考查C++/C程序员的基本编程技能,
内容限于C++/C常用语法,不涉及数据结构、算法以及深奥的语法。
考试成绩能反映出考生的.编程质量以及对C++/C的理解程度,
但不能反映考生的智力和软件开发能力。
笔试时间90分钟。请考生认真答题,切勿轻视。
一、请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。
(10分)
提示:这里“零值”可以是0, 0.0 , FALSE或者“空指针”。
例如 int 变量 n 与“零值”比较的 if 语句为:
if ( n == 0 )
if ( n != 0 )
以此类推。
请写出 BOOL flag 与“零值”比较的 if 语句:
请写出 float x 与“零值”比较的 if 语句:
请写出 char *p 与“零值”比较的 if 语句:
二、以下为Windows NT下的32位C++程序,请计算sizeof的值(10分)
char str[] = “Hello” ;
char *p = str ;int
n = 10;
请计算
sizeof (str ) =
sizeof ( p ) =
sizeof ( n ) =
void Func ( char str[100])
{请计算 sizeof( str ) = }
void *p = malloc( 100 );
请计算sizeof ( p ) =
三、简答题(25分)
1、头文件中的 ifndef/define/endif 干什么用?
2、#include 和
#include “filename.h” 有什么区别?
3、const 有什么用途?(请至少说明两种)
4、在C++ 程序中调用被 C编译器编译后的函数,
为什么要加 extern “C”声明?
5、请简述以下两个for循环的优缺点
// 第一个for (i=0; i
{if (condition)
DoSomething;
else
DoOtherthing();}
优点:缺点:
// 第二个if (condition)
{for (i=0; i
DoSomething();}
else{
for (i=0; i
优点:缺点:
四、有关内存的思考题(20分)
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;GetMemory(str);
strcpy(str, “hello world”);
printf(str);
}请问运行Test函数会有什么样的结果?答:
char *GetMemory(void)
{
char p[] = “hello world”;
return p;
}
void Test(void)
{
char *str = NULL;
c软件开发笔试题目 篇10
a) 一个整型数;
b)一个指向整型数的指针;
c)一个指向指针的指针,它指向的指针是指向一个整型数;
d)一个有10个整型的数组;
e)一个有10个指针的数组,该指针是指向一个整型数;
f)一个指向有10个整型数数组的指针;
g)一个指向函数的指针,该函数有一个整型参数并返回一个整型数;
h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数
答案:
a)int a
b)int *a;
c)int a;
d)int a[10];
e)int *a [10];
f) int (*a)[10]
g)int (*a)(int)
h) int( *a[10])(int)
2、(4分)请写出以下语句的输出结果:
Int i=43;
Int j=5;
Double f=25.45181;
a) printf(“i=%d,j=%d,f=%3.2f”,i,j,f);
b) printf(“i=%x,j=%06d,i/j=%d”,i,j,i/j);
答案:
A)i=43,j=5,f=25.45
(说明:本来应该输出最小3位有效数字,25.5,但是由于限定了2位小数,所以强制有2位小数,有效数字的个数就起不到强制作用了。如果是%3.1,则输出为25.5)
B)i=2B ,j=000005,i/j=8
(%x显示的是一个无符号的0x 16进制的整数,%06d输出的是6位数,不够6位数,前面补0,i/j两个整数相除,只取商的整数值)
3、(2分)请完成以下宏定义:
a)用预处理指令#define 声明一个常数,用以表明1年中有多少个秒(忽略闰年问题) b)写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个
答案:
a)#define SECONDS (365*24*60*60)UL
b) #define MIN(a,b) ((A)<(B)?(A):(B))
扩展:MAX宏 #define MAX ((A)>(B)?(A):(B))
ABS宏 #define ABS (((X)>0)?(X):(-(X)))
4、(6分)以下为32为windows下的c++程序,请计算:
a)
char str=”hello”;
char *p=str;
请计算:
sizeof(str)=6
sizeof(p)=4
strlen(p)=5
答案:6,字符串数组以�(空格为结尾,所以str数组空间大小为5+1)
4,计算的是指针的长度。
5,strlen函数区的字符指针str的长度,不包括空字符。
b)
void func(char str[100])
{
Void *p=malloc(100);
}
请计算:
sizeof(str)=100,:表示在内存中预分配的内存大小。
sizeof (p)=4
c)
int a[3]={1,2,3};
int b=sizeof(a)/sizeof(a[0]); sizeof(a)求的是数组的大小。
请计算:
b=3,对的。
5、(2分) 设有定义:int n=0,*p=&n,q=&p; 则以下选项中,正确的赋值语句是(d) a)p=1; b)*q=2; c)q=p; d)*p=5;
(c)改成q=&p; 才对。
6、(2分)const关键字的用途?(至少说明两种)
答案:
(1)可以定义 const 常量
(2)const 可以修饰函数的参数、返回值,甚至函数的定义体。被const 修饰的东 西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
腾讯笔试&面试 篇11
这是我第一次参加笔试~吼吼~后悔没带计算机
虽有保密协定,但是不透露具体题目就差不多了吧,毕竟大家很需要心里有个底的,像我昨天就搜了半天笔经,还是一头雾水
我投的是业务类职位,归为了产品及其他类别,想必有些职位的题型大致相同,而试卷上有写试卷类型代码,估计就是有分A、B、C等类了
题目有几大类型:
1、计算推理逻辑题,很考验计算,我手算得很痛苦,貌似有人带计算机的,老师貌似没说啥(题不难,手要快!)
2、阅读理解,就是给一篇中等长度的文章,然后给几个选择题,比高考阅读理解简单。。
3、问答题,题目较为五花八门,看的是你的思维创新和缜密性吧~如:问你**优缺点各n个,并剖析前几个
时间很紧,我以为我会做完的,结果没有
一小时交卷
望后人有所借鉴!祝笔试所有同学顺利!
广州站腾讯开发类笔经
这才刚开始找实习,就出了一堆奇奇怪怪的情况;
我还是发点笔经,看能不能拯救拯救我那点可怜的RP;
我笔试的是开发A类的;
听一考java的同学说他们没有附加题,可是我们的有三题附加题,所以可能不太一样(纯属猜测)。
全卷100分,其中60分选择题,每题3分,40分填空题,每空4分,最后有三题编程附加题,腾讯说附加题仅作参考,不做计分排名用。
选择题第一题考extern的作用;
第二题考strstr函数的作用;
第三题考windows下线程什么优先级最高;
第四题考一个交换x,y值的函数的正确写法;
接下来的不是很记得了,内容大概有
析构函数/构造函数能不能被继承,虚函数的继承,linux下fork的返回值,unix下进程间通信最快是采取什么方法;
const int* x和int* const x的区别,int*p[4]的含义;
指针的自加和引用等等。。
选择题就只记得这些了,下面说填空题;
第一题是问(++x)*(++x)和(x++)*(x++)的值;
第二题是给了一个二维数组a[2][3],然后定义了一个int*p[3],p=a;然后问*(*(p+1)+1)的值;
第三题是一个计算变量x的二进制数里面有多少个1的程序填空题,while循环里面进行的是x=x&(x-1);
第四题问inline的作用
第五题问ifndef的作用
第六题给了一个将链表逆序的程序,填空;
填空题就这些了,下面附加题;
附加题三题:
第一题是将两个已经排好序的链表合并成一个有序的链表;
第二题是用O(n)的时间复杂度和O(1)的空间复杂度对二叉树进行层次遍历;
第三题是一个逻辑推理题;四个人,其中一个是小偷,他们每人说了一句话,其中有三个人说真话,一个人说假话,让写代码判断哪个是小偷;
好了,试题就这些了。
腾讯2010 北京业务类试题
1怎么使理发店人气不旺时人气增加;
2开一个公司,生产纸杯,提出二十个纸杯的测试点;
3设计一宠物养成类的游戏,要求提出具体方案,并提出这个游戏将会受欢迎的3大原因;4QQ的十大优点和十大缺点,对于前两点得详细解释。;
面试经验
在腾讯招聘实习生之前,我真的没想过要去,只是觉得互联网行业与我工作毫不相关。面试笔试之前搜不到秘书面经,所以写一篇,希望对后来的兄弟姐妹有用。
一.选择实习生职位
查看职位说明书。这很重要。因为它不仅可以让你知道你是否真的适合这个职位,也可以让你在之后的面试中按照它选择性地向面试官展示自己的优势(避免面试官面试了你很久,但是找不到他想要的特质,而你因此被鄙视)。
二.面试及笔试准备
1.根据职位说明书预测笔试可能出现的题目
比如:秘书职位说明书里,“有活动策划经验有限”可以推出,笔试里可能有活动策划相关题。实事证明我这个推断是正确的,因为笔试中有一题是为工作了长时间的员工规划一个活动,让他们减压、放松、释放。
再比如:秘书职位说明书中说,要有“创新”。这说明公司想找的不是一个死板的人,只具备“硬实力”的人,他们要找的是一个有“软实力”的人。具体来说,笔试中那道E-mail写作和计算题属于“硬实力”是可以通过系统训练短时间获得的,而活动策划和为理发店增加人气这样的题是需要长期知识经验积累才能出色完成的,所以把做题的重点放在“软实力”题上。
2.群面
秘书的群面放在笔试之前,这可帮HR省去很多力气,因为很多东西是需要看的。通过职位说明书也可以知道是为什么。
“亲和力好,形象气质佳”这需要当面看才看得出,因为现在好多简历照片是伪造的。“良好的沟通能力、团队合作精神”在群面中可以快速被HR发掘。
3.二面、三面。一对一。HR面
在这几面最重要是对自己的简历熟悉。自己做过的大型活动都能用STAR法描述出来。察言观色。其他注意事项参见他人帖子。
4.终面。总监面。压力面试。
面我的总监酷酷的,他可能就是我未来的顶头上司。
基本是压力面试,总监表现得不屑漠不关心,这其实可能是在考验我们的人际沟通能力,看我们是否能带动气氛。
他还会说你笔试成绩不好。这其实是想知道你大学成绩怎么样,在考察你的学习力。总之做到处变不惊,神情自若,分析问题背后的问题。应该可以很好应付了。
以上是小女的一家之言,仅作为各位的参考。面试最重要的是做好自己,做自己才可能打动面试官。
本来不想参加腾讯实习招聘活动的,因为觉得如果不好好准备的话根本没戏,事情证明确实如此。而且我的做事风格向来如此,如果我想做一件事,肯定提前两个月来准备。大学三年想做的事基本都做成了,因为我觉得自己善于规划找机会。被同学拉去笔试,前一天晚上匆匆看了几眼程序员的面试宝典。第二天去西工大笔试,当时笔试地点还有点小变动,一顿狂奔之后到了目的地。
由于场地问题,组织者还花了点小时间调座位,还好我抢到了第一排的座位,最好的位置,呵呵。然后开始答题,发现腾讯很重视C++的功底,考的很细,如果功底不够深,很容易打错。(PS:一软院的同学因为C++功底好,一面面了两次,直接跳过二面获得了HR面的资格),然后还有些数据结构的基础题,比如反转链表,让你填空,sizeof的各种用法,win32平台的一些知识,还有几道附加题,主要是算法数据结构方面的,记得第一题是用递归的方法实现两个有序链表的链接,第三题是个推理题,用编程实现,类似杀人游戏那种的题目。写代码费劲了点,于是写了算法思想,后来证明还是有用的。然后就是等待,本来也没抱什么希望,希望腾讯把我鄙视后,接着准备android开发竞赛。没想到晚上十一点的时候,在官网上看到了自己的名字,进入腾讯实习生一面了。兴趣,给她(好朋友)打了电话,然后就开始思考腾讯可能出哪些面试题,时间有限,我就选了些链表方面的算法,把那两道附加题想了一下,还有些面向对象的理解问题,看完已经两点多,本来打算复习下网络方面的问题,太晚了,就睡了,早上六点起来,看了朋友写的android面经,他还找来了在腾讯工作六年的人,帮我写了封推荐信,可能是我自己太不争气(准备的太不充分),最后还是被鄙视了。
八点多,到了面试的大酒店,上了六楼,然后开始等待,九点半通知我去602面试,进去后,对面试官说了声你好,他笑了一下。开始让我自我介绍,我的介绍花了一分钟多,强调了自己学习能力,团队合作能力,项目经验之类的,然后他拿出笔试的卷子,找了两道他认为比较难的问题。问了我,第一个关于指针的,因为自己的C++功底还可以吧,顺利答上
了,另一道题关于C语言的与操作的题,我觉得自己做的很正确,但是面试官还是觉得不对,觉得自己没有掌握,面试官看出我的窘态。于是换了话题,谈谈对面像对象的理解,这个我觉得太容易,一顿忽悠,他还是很满意意的。然后他让谈了对android平台的认识和优缺点,呵呵,撞到枪口上了,我可是班里唯一会这个平台编程的,操作系统课上还给大家讲了他的系统架构和优势,一顿白乎。然后我还主动问了一下腾讯会在android平台上做些什么东西,他说你的方向选对了,未来这个平台的发展机会很大。然后我谈到了自己的竞赛和项目经理和自己最近要参加的一个android开发比赛。
接下来的是重点,是为什么挂掉的原因,因为没有复习网络的相关知识,所以他问道oSI七层协议的时候,没有答全。可能给面试官的感觉是基础知识不够扎实,腾讯是不准备要那些基础知识不扎实的人的,哪怕他做过再多的项目。然后问了我一个小算法题,如何判断两个链表是否交汇,我给了二层遍历的解法,一定可以实现,但是效率太低了,从他的表情中可以看出,很不满意。
最后问我有什么问的吗,我说说我今天表现出来的缺点,他说基础不够扎实,原因如上,建议我本科不要着急做工程,一定要把基础打牢。我一顿点头,然后道了声谢走出去了,心中十分忐忑。
等了两天,没有结果,被鄙视了,总结一下,申请实习生,一定要准备充分,提前一个月,准备算法,网络,体系结构,数据结构方面的。基础一定扎实,现在给自己制定了一个计划,如果能保研。大四一定要把算法的短板补上来,<<编程之美>>,<<编程珠玑>>一定要看好。还有一定要《c++primer》,《think in java》,看完至少两遍,并做下学习笔记,写在自己的技术博客里。最后建议大一大二的学弟,对学习有迷惑的,一定要记得买本《我是一只IT小小鸟》。
PS:如果我提前一个月准备,腾讯实习生肯定拿下,这次面试其实提高了我的自信心,腾讯的笔试面试不过如此。
腾讯QQ之技术类OFFER攻略
腾讯QQ之技术类OFFER攻略
由于近来有些人都问我腾讯笔试和面试到底是考什么,问什么,所以就灌下这篇水文,也算是我自己复习一遍以及给有兴趣或者后来者嗤鼻一笑的机会:)其实应聘内容也真的很难说清楚,而且我也不知道我所经历的是不是有代表性,何况我还是找工作的新手(本科也没找过工作,之前也只是应聘过华为),所以如果下文有什么疏漏之处,尽管踩我好了:)
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(归纳法不适用,呵呵)。一面时,我只带了两页纸简历,到了面试地点,才发现很多人都是一叠资料的,有的人还不断在复习资料。。别提当时我有多狼狈了。。根据外貌和谈吐可以推断出一面面试官是一个前线的技术专家。面试时首先自我介绍,我一向没刻意去背自我介绍,但是也事先想好了的。然后就是问你哪种编程技术比较拿手啊,项目经验啊,我想关键是深度一定要够,一定要体现你的参与价值和收获,不管是开发过程还是开发技术。面试时我分别从开发过程与开发技术两个方面说了两个项目,感觉面试官还是接受了的,然后小部分技术细节,比如说在一个项目里面为了解决一个问题,你采取了什么策略,采用了什么技术,这个可千万不能说错哦,不然你就是在自打嘴巴了。。也许我的笔试成绩还可以,所以语言层面的问题基本没有了。总结,这个面试官很实在,也相当和蔼可亲。。
3。二面
二面的面试官比一面的少,应该都是部门经理。坐这个位置的人都是技术和管理的大拿了,当然这是后来知道的啦。因此这次面试分技术和非技术两部分,不过主要还是技术的。首先还是自我介绍。。然后面试官就开始设擂台了,问你觉得笔试试卷出得如何?我思考了2秒钟,说比较适中(如果我说难,那么如果是简单的话,那我就被BS了,实际上也不难吧,说容易吧,如果我考得不好,分数我倒是看到过,但是不知道那算高还是低,所以很容易被BS),看面试官表情,显然我的回答应该没有W/A掉。接着,他继续问到,你觉得你做错了或者没有把握的题目是哪题。我就说了两三题了,然后他奸诈的看看了我的试卷,从他的表情,我知道,嘿嘿,这个回合是我赢了。然后他就要我介绍一个有代表性的项目。显然这次跟一面要有所变化才行,毕竟是二面了。于是我挑了一个比较容易表述的,简洁清晰,又有一定技术难度的(主要是系统架构方面)展开攻防战,此情此景。。恩,你猜对了,就象电视上看到的警察审讯嫌疑犯一样,呵呵,只是这个“警察”是面带笑容的。。反正,他会象导弹一样追着你来“攻击”,如果你承受不了的话就要中弹了,等到你中得多了,游戏也就GAME OVER了。。我想最好还是讲得高深一点,这样就提高了他反击的难度,正如论文一样,要写得让审稿的人看不懂,这样他就挑不出毛病了。。哈哈。如果你没真正做过或者做得不好的话,很难在这回合取胜的了,除非你是作弊高手,或者。。面试官发烧了:)除了技术,在面试中也会问非技术的问题,他问我想搞管理还是搞技术,你喜欢什么样的岗位,最最喜欢哪们语言,你的长处在哪里,你有什么值得称道的思想品质,你拿了其他公司offer没有等等。面试完了,如果他叫你等一会参加HR的聊天,那么你就有希望了。
总结,这个面试官很狡猾,哈哈,不过不用怕,他只是来装出来吓你而已,其实很好人的啦。
4。HR谈话
基本上没什么好说的了,只是问了几个小问题而已,比如你对哪些公司有意向,哪什么原因;如果我们录用你,明天就要签约,你行不行等等。。我都是诚恳的回答啦,因为我知道如果我挣扎是没用的。。何况HR经理(腾讯HR经理英文名叫TOM)这个位置也只有牛人才能当,何况TOM是两年前从其他公司挖过来的。。
5。总结
【C笔试面试题】推荐阅读:
c和linux笔试面试总结10-13
高校辅导员笔试面试试题汇总09-14
C语言笔试题目08-18
c语言笔试知识点07-02
二级c笔试试卷31次08-19
邮政银行面试笔试05-23
电商面试笔试题目05-28
电装招聘笔试+面试07-05
徽商银行笔试面试经验06-18