大公司笔试题目.doc

大公司笔试题目.doc

ID:28376171

大小:184.50 KB

页数:82页

时间:2018-12-09

大公司笔试题目.doc_第1页
大公司笔试题目.doc_第2页
大公司笔试题目.doc_第3页
大公司笔试题目.doc_第4页
大公司笔试题目.doc_第5页
资源描述:

《大公司笔试题目.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、大公司笔试题目1一个父类写了一个virtual函数,如果子类覆盖它的函数不加virtual,也能实现多态?在子类的空间里,有没有父类的这个函数,或者父类的私有变量?(华为笔试题)答案:只要基类在定义成员函数时已经声明了virtue关键字,在派生类实现的时候覆盖该函数时,virtual关键字可加可不加,不影响多态的实现。子类的空间里有父类的所有变量(static除外)。2.main主函数执行完毕后,是否可能会再执行一段代码?(朗讯的一道笔试题)答案:可以,可以用_onexit注册一个函数,它会在main之后执行;如果你需要加入一段在main退出后执行的

2、代码,可以使用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

3、( fn4 );     printf( "This is executed first." );  }  void fn1()  {     printf( "next." );  }  void fn2()  {     printf( "executed " );  }   void fn3()  {     printf( "is " );  }   void fn4()  {     printf( "This " );  } 结果:This is executed first.  This is executed next. 3.

4、有双向循环链表结点:(华为面试题)typedefstructnode{intdate;structnode*front,*next;}_Node;有两个双向循环链表A,B,知道其头指针为:pHeadA,pHeadB,请写一函数将两上链表中date值相同的结点删除参考算法:    1.取出A的一个元素d  2.收集B中有相同元素d的结点到垃圾箱,并从B里删除  3.收集A中有相同元素d的结点到垃圾箱,并从A里删除  4.删除垃圾箱中的所有元素  5.A链的指针指向下一个  6.重复1~5,直到A链循环到头了  注意的是第3步,在2步执行后垃圾箱不为空时

5、才执行。 上述算法还可以做一点点优化:  1.加入两个变量cA, cB,分别记录当前A中和B中的元素个数  每次从较长者中取出一个元素来,先从较小者中找起  若没有,则不必在较长者中浪费时间了#include ? struct NODE  {    int date;    NODE *front,*next;  }; void redel(NODE *&ahead,NODE *&bhead)  {      int boy=0;      NODE *pa=ahead,*pb=bhead,*paa,*paaa,*paaaa,

6、*pbb;      while(pa->next!=ahead)      {          int boys=pa->date; //取pa中一个值         paaaa=pa;          paa=pa;          pb=bhead;          while(pb->next!=bhead)          {              if(boys==pb->date) //如果pa,pb中有值相同             {                     cout<

7、        cout<<"delete B:"<date<<" ";                  if(pb==bhead)                  {                      boy=1;                      pb->front->next=pb->next;                      pb->next->front=pb->front;                      bhead=bhead->next;                      p

8、bb=pb;                      pb=pb->next;              

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。