优客文库提供全面的范文格式和文档模板,包括申请书、合同、借据、证明、求职信等,助力您快速撰写专业文档。

C开发工程师笔试题

时间: 热度:23°C 加入收藏 我要投稿 点赞(0)

C开发工程师笔试题

  C/C++软件工程师的月薪范围一般在3500-20xx0元之间。一般而言,刚刚毕业的大学生以及拥有1-3年的工作经验者的月薪通常在3500-4500元左右,下面就由第一范文网小编为大家介绍一下C++开发工程师笔试题的文章,欢迎阅读。

  C++开发工程师笔试题篇1

  1、改错

  如下程序能不能正确输出,如果不能,让他正确输出hello字符串。

  void New(char * p) { p = new char[5]; } void main { char* p = NULL; New(p); strcpy(p, "hello"); printf("%s", p); }

  2、排列算法

  一个数组{3,4,5,6,3},请输出这个数组的全排列,比如34563、43563、33456...。

  #include

  #include

  template

  void Print(T* tArray, int iSize)

  {

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

  {

  std::cout << tArray[i] << ' ';

  }

  std::cout << std::endl;

  }

  template

  void Permutation(T* tArray, int iSize)

  {

  int* iIndex = new int[iSize + 1];

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

  {

  iIndex [i] = iSize - i;

  }

  Print(tArray, iSize);

  for(int i = iSize - 1; i > 0; )

  {

  -- iIndex [i];

  --i;

  int j = iSize - 1;

  do

  {

  if(tArray[j--] != tArray[i++])

  {

  std::swap(tArray[j--], tArray[i++]);

  }

  }while(j > i);

  Print(tArray, iSize);

  i = iSize - 1;

  for(;iIndex [i] == 0; --i)

  {

  iIndex [i] = iSize - i;

  }

  }

  delete iIndex;

  }

  int main

  {

  int a = {3,4,5,6,3};

  Permutation(a,5);

  }

  C++开发工程师笔试题篇2

  1、数据结构

  在二叉树中找出和为某一输入值的所有路径。

  #include

  void getPath(struct treeNode* node, int sum, vector& stack, int currentSum) { //stack用来存放路径,sum为输入值

  } if (node == NULL) return; currentSum += node->id; stack.push_back(node->id); if (node->lchild != NULL) getPath(node->lchild, sum, stack, currentSum); if (node->rchild != NULL) getPath(node->rchild, sum, stack, currentSum); if (node->lchild == NULL && node->rchild == NULL) { if (currentSum == sum) { vector::iterator it = stack.begin; for (; it != stack.end; ++it) printf("%d ", *it); printf("/n"); } } stack.pop_back;

  2、编写程序:如何获得一个整数的二进制表达中有多少个1?

  C++开发工程师笔试题篇3

  1、编写程序:在O(n)时间复杂度内从数组array[0..n-1]中找出第k个最小的元素。 说明:算法可以对array中的元素进行排序。

  2、综合考察:

  银行有个存有n个用户编号的文件,每个数都小于n,其中n=10的7次方。每个编号都不重复。

   输出:n个数升序排列。

   约束条件:内存最多有2兆的空间,运行时间复杂度为O(n)。

221381
领取福利

微信扫码领取福利

微信扫码分享

直接下载
单次下载
0.5元/次
支付宝支付
2.免费下载(每天5次)
公众号:试题试卷下载复制
复制微信公众,搜索即可关注!
扫一扫关注公众号
欢迎使用微信支付
扫一扫支付
金额:
常见问题

请登录之后再下载!

下载中心

您的账号注册成功!密码为:123456,当前为默认信息,请及时修改

下载文件立即修改

帮助中心

如何获取自己的订单号?

打开微信,找到微信支付,找到自己的订单,就能看到自己的交易订单号了。

阅读并接受《用户协议》
注:各登录账户无关联!请仅用一种方式登录。


用户注册协议

一、 本网站运用开源的网站程序平台,通过国际互联网络等手段为会员或游客提供程序代码或者文章信息等服务。本网站有权在必要时修改服务条款,服务条款一旦发生变动,将会在重要页面上提示修改内容或通过其他形式告知会员。如果会员不同意所改动的内容,可以主动取消获得的网络服务。如果会员继续享用网络服务,则视为接受服务条款的变动。网站保留随时修改或中断服务而不需知照会员的权利。本站行使修改或中断服务的权利,不需对会员或第三方负责。

关闭