C C++面试笔试题目

时间:2023-04-03 03:30:07 笔试题目 我要投稿
  • 相关推荐

C C++面试笔试题目集锦

  一、输入一个n ,然后在屏幕上打印出NxN 的矩阵!

C C++面试笔试题目集锦

  例如,输入一个3,则

  1 2 3

  8 9 4

  7 6 5

  输入一个4,则

  1 2 3 4

  12 13 14 5

  11 16 15 6

  10 9 8 7

  参考答案:

  #include

  #include

  #define N 10

  void printCube(int a[][N],int n);

  void main()

  {

  int a[N][N],n;

  printf(“input n:\n”);

  scanf(“%d”,&n);

  printCube(&a[0],n);

  getch();

  }

  void printCube(int a[][N],int n)

  {

  int i,j,round=1;

  int m=1;

  for(i=0;i

  a[0]=m++;

  for(i=n-1;i>=n/2;i–)

  {

  for(j=round;j<=i;j++)

  a[j]=m++;

  for(j=i;j>=round;j–)

  a[j-1]=m++;

  for(j=i;j>round;j–)

  a[j-1][round-1]=m++;

  for(j=round;j

  a[round][j]=m++;

  round++;

  }

  for(i=0;i

  for(j=0;j

  printf(“%3d”,a[j]);

  printf(“\n”);

  }

  }

  二、朗讯面试题 :

  There are two int variables: a and b, don’t use “if”, “? :”, “switch” or other judgement statements, find out the biggest one of the two numbers.

  参考答案:

  方案一int max = ((a+b)+abs(a-b)) / 2

  方案二int c = a -b;

  char *strs[2] = {“a大”,”b大”};

  c = unsigned(c) >> (sizeof(int) * 8 – 1);

  三、朗讯面试题 :

  如何打印出当前源文件的文件名以及源文件的当前行号?

  参考答案: 通常使用的就是__FILE__, __LINE__,在调试函数中利用”%s”,”%ld”,打印就好了。

  四、朗讯面试题 :

  main主函数执行完毕后,是否可能会再执行一段代码,给出说明?

  参考答案: crt会执行另一些代码,进行处理工作。

  如果你需要加入一段在main退出后执行的代码,可以使用atexit()函数,注册一个函数。

  语法:

  #include

  int atexit(void (*function”)(void));

  #include

  #include

  void fn1( void ), fn2( void ), fn3( void ), fn4( void );

  int main( void )

  {

  atexit( fn1 );

  atexit( fn2 );

  atexit( fn3 );

  atexit( fn4 );

  printf( “This is executed first.\n” );

  }

  void fn1()

  {

  printf( “next.\n” );

  }

  void fn2()

  {

  printf( “executed ” );

  }

  void fn3()

  {

  printf( “is ” );

  }

  void fn4()

  {

  printf( “This ” );

  }

  五、朗讯面试题 :

  如何判断一段程序是由C编译程序还是由C++编译程序编译的?

  参考答案: c++编译时定义了 __cplusplus

  c编译时定义了 _STDC_

  六、下面这道面试题怎么做(指针)? #include

  main(){

  int c[3][3]={1,2,3,4,5,6,7,8,9};

  for(int i=0;i<3;i++)

  for(int j=0;j<3;j++)

  printf(“%ld\n”,&c[j]);

  printf(“————————-\n”);

  printf(“%ld\n”,(c+1));

  printf(“%ld\n”,(*c+1));

  printf(“%ld\n”,&c[0][0]);

  printf(“%ld\n”,**c);

  printf(“%ld\n”,*c[0]);

  if(int(c)==int(*c))

  printf(“equl”);

  }

  为什么c,*c的值相等,(c+1),(*c+1)的值不等

  c,*c,**c,代表什么意思?

  参考答案: c是第一个元素的地址,*c是第一行元素的首地址,其实第一行元素的地址就是第一个元素的地址,这容易理解。**c是提领第一个元素。

  为什么c,*c的值相等?

  int c因为直接用c表示数组c[0][0]

  printf(“%ld\n”,*c[0]);语句已将指针移到数组头。

  int(*c)表示c0的值为1,所以相等。

  数组c的存放空间示意如下:(机器中是行优先存放的)

  c[0][0] c[0][1] c[0][2]

  c[1][0] c[1][1] c[1][2]

  c[2][0] c[2][1] c[2][2]

  c是一个二维数组名,实际上它是一个指针常量,不能进行自加、自减运算,即:c++、c–、++c、–c

  都是不允许的;

  c: 数组名;是一个二维指针,它的值就是数组的首地址,也即第一行元素的首地址(等于 *c),也

  等于第一行第一个元素的地址( & c[0][0]);可以说成是二维数组的行指针。

  *c: 第一行元素的首地址;是一个一维指针,可以说成是二维数组的列指针。

  **c:二维数组中的第一个元素的值;即:c[0][0]

  所以:

  c 和 *c的值是相等的,但他们两者不能相互赋值,(类型不同);

  (c + 1) :c是行指针,(c + 1)是在c的基础上加上二维数组一行的地址长度,即从&c[0][0]

  变到了&c[1][0];

  (*c + 1):*c是列指针,(*c + 1)是在*c的基础上加上二数组一个元素的所占的长度,即从

  &c[0][0]变到了&c[0][1]

  从而(c + 1)和(*c + 1)的值就不相等了

  七、定义 int **a[3][4], 则变量占有的内存空间为:_____

  参考答案: int **p; /*16位下sizeof(p)=2, 32位下sizeof(p)=4*/

  总共 3*4*sizeof(p)

  八、编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒。如输入2004年12月31日23时59分59秒,则输出2005年1月1日0时0分0秒。

  参考答案: 判断年份是否是闰年,月份的大小月,

  月(12进制)、日(与闰年、大小月有关)、时(24进制)、分(60进制)、妙(60进制)

  九、汤姆逊的面试试题:怎么快速检测出一个巨大的链表中的死链? 参考答案

  十、几道基础题

  十一、真正的微软面试题

  十二、经典题

  十三、文件操作,读取一组数进行排序然后写入文件

  十四、交换两个数,不用第三块儿内存!请问怎么实现?

  十五、C/C++笔试提问

  十六、蛮有意思的题目

  十七、关于Const常量问题,华为面试题。

  十八、四个面试问题

  十九、难度系数、具体的实现算法?

  二十、两道面试题,最好能提供一个完整的实现代码!

  二十一、求用一段C或C++程序写求 f(x)=100! 的完整程序?

  二十二、25匹马,每次捡5匹跑,几次可找出最快的5匹马?

  二十三、一个面试题 求 n!

  IT类就业攻略

  发信人: noobody (everybody), 信区: Job

  标 题: 北邮IT类就业攻略

  发信站: 北邮人论坛 (Sun Sep 6 12:16:28 2009), 站内

  不久前发了那篇《盘点IT类就业方向》的文章,感受到了师弟师妹们对找工作方面信息的需求,首先谢谢大家的支持,今天就写一下自己以及同学找工作过程中的 心得体会吧,找工作如同高考、考研,重点是要有适合自己的攻略,我的文字算是参考资料吧,不废话了,进入正题:

  适合人群:非神人

  一、你将可能面临的历程:

  总体历程:求职的历程对于我们这些非神人的凡夫俗子来说,总体还是很艰辛的。一般主要的战斗时间段是9月起至本学期结束,有些公司会在年三十,大年初几左右发Offer或者体检通知。

  如果你寒假结束还没有拿到令自己满意的Offer,一定要坚持下去,因为好多大牛单位的面试或者终面都放在了年后,我就认识年后去PICC,人民银行,建 设银行的朋友。只是到了这个阶段,你会比较辛苦,既要做好毕设,又要应付各种各样的毕业阶段要做的事情,承受一定的心理压力,但是,人生能有几回搏,对于 整个人生来说,这一两个月的艰辛付出是值得的。

  //z 说得非常好,先解决有无问题,再解决别的方面的问题。

  1、海投、海笔、海面阶段

  对于Offer,首先要解决的是”有”和”无”的问题,之后才能解决”有”(或者至少是曾经拿到,自己拒了企业,而非企业拒了自己)和”好”的问题。而且 开始的时候,大家对自己适合国企还是适合外企,究竟适合哪个行业(电信?金融?通信设备?网络?)都没有清晰的概念,心态方面也是发毛的(找不找得到工作 可是关乎自己的饭碗哪),因此一开始周围的同学们一般都是能投的都投了,能笔的都笔了,能面得都面了。

  //z 还是需要实践

  这个阶段是很关键的,”纸上得来终觉浅”,你再是看面经,也不如你参加一次笔试,面试,之后和同样找工作的室友同学讨论分析来得快,收获大。要注意总结,一个行业往往不是只有一家公司,可能这家公司的笔试你没有通过,但到了下家,侧重点都差不多的话,就会相对容易些。

  对于个别神人,可能是一打一个准儿,也许并不需要海笔、海面,确实有这样的人存在,但是还是相对保险点儿好。而且有时候你都不知道为什么同在一个实验室,研究方向、项目经历也类似,为什么有人能通过简历筛选,有人却不能。

  //z 经过一段时间之后开始进入选择阶段。

  2、战略相对清晰阶段

  经过了一段时间的锤炼,你可能已经渐渐知道自己大概适合哪类公司了,例如你去参加网络公司的笔试、面试都能通过,而参加通信设备的笔试,大部分都没通过, 这个时候,经过一段时间的奔波,你也有些疲惫了,当面试时间或准备时间冲突的时候,你就要有所取舍了,平时不参加笔试、面试时,材料收集,面经准备的针对 性也要有所加强了。

  3、收获阶段

  即使是实力很强的人,也会长期”裸奔”,因为对于大多数企业来讲,就算9月开始招聘,发Offer也到了11月、12月了,而且如果想去国企,就会等待的 更久,因为很多国企11月才刚刚开始收集简历,有些实力不俗的求职者,很可能会在12月、1月的某段时间内,同时收到不止一个Offer。当你收到 Offer的时候,而还在等更理想的一个出结果的时候,可以用各种借口在企业能允许的范围内尽量往后拖延,收集充足的信息,做出取舍。

  二、技术性准备

  1、简历

  简历方面我看版上讨论的已经很多了,不多废话了,只说一下,我个人的做法,我准备了一份完整简历,涵盖了我的所有经历,这份简历不是用来投的,可以说是自己的一个资料库,遇到网投,从这份简历中直接复制粘贴就行了。

  另外准备了两份用来投递的简历,一份面向综合性岗位(IT咨询、国企的复合型或管理型IT岗位等),一份面向研发类岗位,其实,两份区别不大,只是研发类简历中,把做过的研发类项目放在了项目经历一栏的首位,综合性简历中,把做过的IT咨询类项目放在了项目经历一栏的首位。

  2、知识储备

  不同类型的单位笔试、面试考察的侧重点不一样。大致可以分为三大流派:国企、外企、公务员,现在已经9月份了,对于你我这样的凡夫俗子来说,在你即将淹 没在各种招聘会、笔试、面试的赶场中时,你不可能同时出击打击三类目标。下面对这三大流派做下简单梳理,供你见招拆招。

  特别说明:由于个人能力受限,在此我只能重点阐述笔试的侧重点,因为面试一方面我参加的不全,另一方面,面试的不确定性比笔试大多了,谁晓得面试官那天心情怎样,会问什么问题。

  2.1国企考察侧重点

  笔试:

  只考非技术性问题:一般是电信领域的研究院或者设计院。例如电信研究院规划所,只考了英语翻译和汉语申论(给个论题,写篇文章)。移动研究院只考了行测(有没有考英语忘了)。

  只考技术性问题:例如人民银行金融信息管理中心,只考了计算机知识,没考行测和申论。

  英语+技术性问题+行测:大多数国企都是这样考的。

  面试:

  任何问题都可能会问到,个人参加过的那些感觉除了问些技术性问题之外,往往会加上些开放式问题,例如交给你个5人团队的开发项目,你怎么管理。特别说 明,开放式是表现你综合素质的机会,感觉国企面试,这种问题比具体知识性问题还重要。至于具体的知识性问题,虽然也得认真对待,但即使没回答上来,也别灰 心,未必进不了下一轮。

  2.2外企考察侧重点

  笔试:

  重在学习能力、分析能力的考察:一般是非纯IT类外企,例如摩根IT,摩根IT考的很全,连概率论都考了,但是印象中,没考IT专业知识,记不太清了。

  重在IT领域学习能力、分析能力等的考察(可能会涉及算法):一般是对算法有一定要求的IT类企业或网络公司,例如百度、微软,除了选择题,往往后面会有一两道涉及链表、树等方面的大题。

  //z web sense

  重在专业领域的考察:一般是规模不大或者专业性很强的外企,例如web sense,考了很多网络知识。

  外企的咨询类岗位:例如GBS蓝色之路时举行的考试,笔试没考技术,只考了数字分析一类的。

  面试:

  大多数外企都会重点考察你的学习能力和潜力,并不在于你现在掌握有多少知识,有些会问算法,例如百度。

  非技术类岗位则一般都不问技术性问题,往往是群面,单面,观察你的组织,协调,沟通能力。

  2.3公务员考试

  行测+申论,具体不展开了,公务员版肯定有更详细的资料。

  2.4如何准备

  国企:

  国企考察的技术性问题,面广,很杂,操作系统,数据库,网络,数据结构等都可能涉及,但是考的都很基础。所以建议准备一下行测,另外对各科的基础知识复习一下,如果今年没有大的变化的话,这些知识储备足矣应付笔试。

  外企:

  首先计算机所涉及各领域的基础知识你得具备,笔试、面试之后,遇到没有解决的算法题,要和平时编程比较牛的人多讨论,即使没通过笔试,至少要有所收获。 不仅要解决问题,如有余力,可以争取用最巧妙地方法再解决一下该问题。另外,英语能力要强,像要去参加摩根面试的话,口语也得说的过去。

  如果你不买一本书来看觉得不放心的话,可以弄一本《程序员面试攻略》,首先需要声明,该书不能帮助你通过笔试和面试,因为他虽然各领域都涉及了,但是说的 都很提纲挈领。但是该书最大的作用就是里面详细阐述了面对考官所提问题时,应聘者的详细思维过程。该书还有一个好处就是薄,很难想象,都这个时候了,你再去细看《算法导论》。

  三、各种类型的考试策略

  1、笔试:

  策略很简单,会的保证正确,不会的蒙上去,做不完别担心。

  2、群面:

  度很重要,既有效展现了自己的能力,表达了自己的观点,又给别人说话的机会,一点也不张扬。

  在群面中,你如果能够做到准备把握团队进程,做团队中的关键人物(未必是组长),那绝对是个亮点,例如在大家已经对该论题充分发表自己意见的前提下,如果有些同学执拗于自己的观点,整个团队仍然无法达成共识,你可以适时的提醒大家,时间已经快来不及了。

  如果你不幸沦为少数派,你可以保留自己的观点,但是如果说整个团队要出一个解决方案,一定要表达服从团队决策的意思。

  3、单面:

  进入单面,目标企业对你已经比较满意了,在这个环节,技术性问题万一回答不上来,可以把相关领域的答上去。非技术性问题,一定要好好把握,这是展现你综 合能力的好机会。我在单面的时候,犯过不少低级错误,不要表现出来自己不想下基层,或者不想出差等苗头,即使事后你没有去这家公司,但是你既然来了,还是 先拿到Offer再说吧。

  面试总结

  男生要衣着得体,国企以及外企的非技术类岗位,一般都要穿正装,表现要大方,不要畏缩。要表现的具有团队意识,不要太注重个人表现,好像只有自己才掌握真理,这样不会给考官留下好印象。

  女生不宜浓妆艳抹,相信北邮的MM们也不会这样的,呵呵,可以展示女生身上男生不具备的那些优点,例如细心。

  四、时间精力的分配

  收集信息很重要,但是更重要的是实战(参加笔试、面试)和准备(对一些知识点的复习),不能太浮躁,不能一直是在投简历、参加宣讲,真正给了你机会,却连 笔试都过不了,假如你在参加笔试、面试之余,已经没有既准备国企侧重的知识,又准备外企侧重的知识的精力了,那么你就要有所取舍了,不过国企外企也并非完 全没有交集,计算机、通信类的基础知识一般情况下,是都得具备的。

  说明一下,《盘点》那篇文章,也只是帮助你简单梳理一下这些单位都是干什么的,帮助你确定一个大概的方向,例如,切不要以为自己想去国企,那外企的笔试、面试就一概不参加,非要等到11月份才开始找工作。 想进外企,也是同样的道理。

  五、心态

  鲜有听说谁笔试发挥失常的,此处简单说下面试时的心态,假如你技术性的准备工作都做的差不多了,正装也穿了,目标企业的面经也看了,那么最重要的心态就是 自信了,很佩服我认识的一位去百度的同学,他求职的心态就很端正,他认为求职就是岗位与能力匹配的双向选择,如果我不适合你的岗位,那一定还会有适合我的 岗位在等待着我。

  在这里我要说,既然已经通过了笔试或者简历筛选,就说明你的背景基本是符合目标职位对你的期待的,那么参加面试的时候,哪怕你遇到的竞争对手是天下第一剑客,你也要敢于亮剑,不管成功与否,打出自己的风格。

  后记

  关于小企业与非名企

  本来没必要专门写这一节,只要个人有实力,去小企业一样有发展,在大型企业中,你会感觉到自己就像是一颗螺丝钉,未必比在小企业能够获得锻炼。名企与非名企也是同样的道理,只是非名企可能正处于成长的阶段。

  《盘点》和本文所讲的攻略都没有将小企业排斥在外,只是因为小企业的信息相对不那么透明,不太好收集,因此《盘点》一文中,才没有给予过多的论述。

  关于待遇

  《盘点》一文绝对没有误导大家优先考虑待遇的意思,但是说到企业不可避免的要谈到薪酬,而且薪酬在一定程度上能够衡量一个岗位的价值。因此也只是把我掌握的信息提供出来,供大家参考。

  致北邮IT毕业生

  北邮的IT在社会上还是比较受认可的,据我观察,一般投IT类的岗位,少有简历筛选都通不过的(不过我不太了解本科生的情况),到你参加面试的时候就会发 现,几乎到哪儿遇到的都是北邮人多(当然,这和咱们学校IT类专业人数众多也有关系),所以遇到清华、北大等高校的牛人时,也不必有畏惧表现,不宜妄自菲 薄,相信”Made in BUPT”是品质的保证。

  致外校IT毕业生

  北邮人论坛上也有不少外校的兄弟姐妹,如果你们学校的IT水平与北邮相当,甚至于高于北邮,那么对北邮IT研究生的建议同样适用于你们,如果你们学校的 IT并不是十分主流,也不宜妄自菲薄,该投简历的就投,只要能够通过简历筛选,咱们的背景就是符合目标职位的,同样,笔试、面试的时候,要敢于亮剑。

  致给我发站内信的同学

  给我发站内信的同学,首先感谢你们对我的信任,我会尽量予以答复,但是由于种种原因可能不会回复的那么及时,其实由于专业、研究方向等方面的限制,如果 你们想了解信息,我更建议你们多和本实验室、本班以往毕业的师兄师姐们沟通,看看他们去了哪里,对你们的求职有什么建议。

  最后,谢谢阅读,祝大家都能拿到理想的Offer!

【C C++面试笔试题目】相关文章:

C++工程师笔试题目11-25

C++笔试题03-25

C++ 笔试题08-09

普天C++笔试题面试技巧11-06

Sony C++笔试题02-11

普天C++笔试题02-18

c++一些笔试题目和整理的答案08-09

基础C++/C语言笔试题分享11-21

聚网科技C++笔试题07-20

群硕笔试题Java和C++、C#11-21