腾讯技术类校园招聘笔试试题

2014-12-09 17:19 作者 : 围观 : TAG标签: 笔经 腾讯 技术类招聘


        一.  单选题(每题4分,15题,共60分) 礼仪


礼仪

        1.下面有关重载函数的说法中正确的是: qzm4


面试网

          A.重载函数必须具有不同的返回值类型   B.重载函数形参个数必须不同

面试网

          C.重载函数必须有不同的形参列表       D.重载函数名可以不同 求职信息


qzm4

        2.考虑函数原型void hello(int a,int b=7,char* pszC="*"),下面的函数调用钟,属于不合法调用的是:

求职信息


求职信息

        A hello(5)     B.hello(5,8)     C.hello(6,"#")     D.hello(0,0,"#") qzm4


礼仪

        3.分析一下程序的运行结果: 面试网


面试问题

#include qzm4

class CBase

qzm4

{ 求职信息

public:

qzm4

CBase(){cout<<”constructing CBase class”< 礼仪

~CBase(){cout<<”destructing CBase class”<

求职面试

};

面试问题

class CSub : public CBase

求职面试

{

面试网

public:

面试问题

CSub(){cout<<”constructing CSub class”< 礼仪

~CSub(){cout<<”destructing CSub class”<

qzm4

}; qzm4

void main()

面试问题

{

面试问题

   CSub obj;

面试网

}

面试问题

A. constructing CSub class           B. constructing CBase class

求职信息

  constructing CBase class             constructing CSub class 求职面试

  destructing CSub class               destructing CBase class

礼仪

  destructing CBase class              destructing CSub class

面试网

C. constructing CBase class        面试问题

  constructing CSub class        

礼仪

  destructing CSub class          礼仪

  destructing CBase class          qzm4

 D. constructing CSub class 礼仪

    constructing CBase class 面试网

    destructing CBase class

面试问题

     destructing CSub class

qzm4


求职面试

        4.在一个cpp文件里面,定义了一个static类型的全局变量,下面一个正确的描述是: 面试网


求职面试

        A.只能在该cpp所在的编译模块中使用该变量

qzm4

        B.该变量的值是不可改变的

面试网

        C.该变量不能在类的成员函数中引用 qzm4

        D.这种变量只能是基本类型(如int,char)不能是C  类型

qzm4


qzm4

        5.观察下面一段代码:

面试问题


面试网

class ClassA 礼仪

{ 面试网

public: 求职面试

virtual ~ ClassA(){}; 面试问题

virtual void FunctionA(){}; 求职信息

};

qzm4

class ClassB 面试问题

{ 礼仪

public: 面试网

   virtual void FunctionB(){}; 求职信息

};

求职信息

class ClassC : public ClassA,public ClassB 求职面试

{ 求职信息

public:

面试网

}; 礼仪

 

面试网

ClassC aObject;

qzm4

ClassA* pA=&aObject;

求职信息

ClassB* pB=&aObject;

qzm4

ClassC* pC=&aObject; 礼仪


求职信息

        关于pA,pB,pC的取值,下面的描述中正确的是:

qzm4


qzm4

        A.pA,pB,pC的取值相同.               B.pC=pA pB

求职信息

        C.pA和pB不相同                      D.pC不等于pA也不等于pB

求职信息

  求职信息

        每个类的示例在内存中的时候,都会有一张虚函数表,实际上是一个指针的列表,每个指针指向虚函数的地址空间,因此ClassC和ClassA是一样的地址,但是ClassB没有析构函数,它的虚函数表中就只有一项记录,就是FunctionB了。

求职面试

  求职信息

        6.参照1.5的代码,假设定义了ClassA* pA2,下面正确的代码是:

面试网


面试网

        A.pA2=static_cast(pB); qzm4

        B.void* pVoid=static_cast(pB);

面试问题

         pA2=static_cast(pVoid);

面试问题

        C.pA2=pB;

求职信息


礼仪

        D.pA2=static_cast(static_cast(pB)); 求职面试


求职信息

        7.参照1.5的代码,下面那一个语句是不安全的: 求职信息


qzm4

        A.delete pA   B.delete pB   C.delete pC qzm4


qzm4

        8.下列程序的运行结果为:

礼仪


面试网

#include qzm4

void main()

qzm4

{

礼仪

int a=2; 礼仪

int b=  a;

qzm4

cout<<a/6<

礼仪

}

求职信息


求职信息

        A.0.5   B.0   C0.7   D.0.6666666-

礼仪


qzm4

        9.有如下一段代码: 求职信息


面试问题

#define ADD(x,y) x y

求职面试

int m=3; 面试问题

m =m*ADD(m,m);             

面试网

则m的值为:

礼仪


面试问题

        A.15   B.12   C.18   D.58

求职面试


求职信息

        10.如下是一个带权的图,图中结点A到结点D的关键路径的长度是:

求职信息


面试问题

        A.13       B.15       C.28       D.58

求职信息

  礼仪

        11.下面的模板声明中,正确的是: qzm4


礼仪

        A.template 面试网

        B.template 礼仪

        C.template 求职信息

        D.template

面试网


求职面试

        12.在Windows编程中下面的说法正确的是: 求职信息


礼仪

        A.两个窗口,他们的窗口句柄可以是相同的     B.两个窗口,他们的处理函数可以是相同的

面试网

        C.两个窗口,他们的窗口句柄和窗口处理函数都不可以相同. qzm4


求职面试

        13.下面哪种情况下,B不能隐式转换为A?

qzm4


qzm4

        A.class B:public A{}                 B.class A:public B{} 礼仪

        C.class B{operator A();}             D.class A{A(const B&);}

求职信息


求职面试

        14.某公司使用包过滤防火墙控制进出公司局域网的数据,在不考虑使用代理服务器的情况下,下面描述错误的是”该防火墙能够(   )”.

求职信息


求职面试

        A.使公司员工只能访问Internet上与其业务联系的公司的IP地址.

求职信息

        B.仅允许HTTP协议通过,不允许其他协议通过,例如TCP/UDP.

面试网

        C.使员工不能直接访问FTP服务器端口号为21的FTP地址.

礼仪

        D.仅允许公司中具有某些特定IP地址的计算机可以访问外部网络

qzm4

        15.数字字符0的ASCII值为48,若有以下程序: 面试网


求职信息

main()

求职面试

{ 面试网

   char a=’1’,b=’2’; 求职信息

printf(“%c,”,b  ); 面试网

printf(“%d\n”,b-a);

求职信息

}

面试问题


求职面试

        程序运行之后的输出结果是:

求职信息


求职信息

        A.3,2      B.50,2       C.2,2     D.2,50

求职面试


面试网

        二.  填空题(共40分) 礼仪


礼仪

        本程序从正文文件text.in读入一篇英文短文,统计该短文中不同单词和它的出现次数,并按词典编辑顺序将单词及它的出现次数输出到正文文件word.out中. qzm4


面试网

        程序用一棵有序二叉树存储这些单词及其出现的次数,一边读入一边建立.然后中序遍历该二叉树,将遍历经过的二叉树上的节点的内容输出.

礼仪


求职信息

        程序中的外部函数

求职信息


求职面试

int getword(FILE* pFile,char* pszWordBuffer,int nBufferLen);

面试网

从与pFile所对应的文件中读取单词置入pszWordBuffer,并返回1;若单词遇文件尾,已无单词可读时,则返回0.

qzm4

#include 面试问题

#include

qzm4

#include qzm4

#include

礼仪

  礼仪

#define SOURCE_FILE "text.in" 求职信息

#define OUTPUT_FILE "word.out" 面试网

#define MAX_WORD_LEN 128 面试网

  求职面试

typedef struct treenode

qzm4

{

礼仪

      char szWord[MAX_WORD_LEN]; qzm4

      int nCount;

求职面试

      struct treenode* pLeft; qzm4

      struct treenode* pRight; qzm4

}BNODE; 礼仪

  求职信息

int getword(FILE* pFile,char* pasWordBuffer,int nBufferLen); qzm4

  求职面试

void binary_tree(BNODE** ppNode,char* pszWord) 面试网

{

礼仪

      if(ppNode != NULL && pszWord != NULL)

求职面试

      { qzm4

             BNODE* pCurrentNode = NULL; 面试网

             BNODE* pMemoNode = NULL; 求职面试

             int nStrCmpRes=0; 礼仪

  求职信息

             ____(1)_____;pCurrentNode=*ppNode

礼仪

 

qzm4

             while(pCurrentNode)

qzm4

             {

求职信息

                    /*寻找插入位置*/ 面试问题

                    nStrCmpRes = strcmp(pszWord, ___(2)___ );pCurrentNode->szWord 礼仪

 

qzm4

                    if(!nStrCmpRes)

qzm4

                    {

qzm4

                           ___(3)___; pCurrentNode->nCount 面试网

 

面试问题

                           return; 求职信息

                    }

求职面试

                    else 面试问题

                    {

求职信息

                           ___(4)___; pMemoNode=pCurrentNode

礼仪

                           pCurrentNode = nStrCmpRes>0? pCurrentNode->pRight : pCurrentNode->pLeft; 面试网

                    } 求职信息

             } 求职信息

      } 求职面试

 

面试网

      pCurrent=new BNODE;

求职面试

  qzm4

      if(pCurrentNode != NULL) 面试问题

      { 礼仪

             memset(pCurrentNode,0,sizeof(BNODE)); 礼仪

             strncpy(pCurrentNode->szWord,pszWord,MAX_WORD_LEN-1); 面试网

             pCurrentNode->nCount=1;

qzm4

      } qzm4

  面试问题

      if(pMemoNode==NULL) 求职信息

      {

礼仪

             ___(5)___; *ppNode= pCurrentNode 求职信息

      } 礼仪

      else if(nStrCmpRes>0)

求职面试

      { 面试问题

             pMemoNode->pRight=pCurrentNode;

面试问题

      } 求职面试

      else

面试网

      {

求职面试

             pMemoNode->pLeft=pCurrentNode;

求职信息

      } 面试问题

} 面试网

 

面试网

void midorder(FILE* pFile,BNODE* pNode) 礼仪

{ 礼仪

      if(___(6)___) return;!pNode||!pFile 面试网

 

礼仪

      midorder(pFile,pNode->pLeft); 礼仪

      fprintf(pFile,"%s %d\n",pNode->szWord,pNode->nCount);

qzm4

      midorder(pFile,pNode->pRight); 求职面试

}

礼仪

 

求职信息

void main()

qzm4

{

求职信息

      FILE* pFile=NULL; 求职面试

      BNODE* pRootNode=NULL; 面试网

      char szWord[MAX_WORD_LEN]={0};

面试网

 

求职信息

      pFile=fopen(SOURCE_FILE,"r");

求职信息

  qzm4

      if(pFile==NULL)

qzm4

      {

qzm4

             printf("Can't open file %s\n",SOURCE_FILE);

求职面试

             return;

面试网

      } 求职信息

  面试网

      while(getword(pFile,szWord,MAX_WORD_LEN)==1) 面试网

      { 求职面试

             binary_tree(___(7)___);// pRootNode,szWord

求职信息

      } 面试问题

  qzm4

      fclose(pFile);

面试网

  面试网

      pFile=fopen(OUTPUT_FILE,"w"); qzm4

      midorder(pFile,pRootNode);

礼仪

      fclose(pFile); qzm4

} 面试问题

三.  附加题(每题30分,2题,共60分) 礼仪

1.      从程序健壮性进行分析,下面的FillUserInfo函数和Main函数分别存在什么问题? 礼仪

#include

求职面试

#include 礼仪

 

求职信息

#define MAX_NAME_LEN 20

求职信息

 

面试问题

struct USERINFO

面试问题

{

求职信息

      int nAge;

面试网

      char szName[MAX_NAME_LEN];

qzm4

};

qzm4

 

面试网

void FillUserInfo(USERINFO* parUserInfo) 礼仪

{ qzm4

      stu::cout<<"请输入用户的个数:";< p="">

求职信息

  面试问题

      int nCount=0;

求职面试

      std::cin>>nCount; 面试问题

  面试问题

      for(int i=0;i<nCount;i  ) 求职面试

      { 求职面试

             std::cout<<"请输入年龄:";< p="">

面试网

             std::cin>>parUserInfo[i]->nAge; qzm4

  求职信息

             std::string strName;

求职信息

             std::cout<<"请输入姓名:";< p="">

礼仪

             std::cin>>strName; qzm4

             strcpy(parUserInfo[i].szName,strName.c_str()); 求职面试

      }

qzm4

} 礼仪

 

qzm4

int main(int argc,char* argv[])

面试网

{

礼仪

      USERINFO arUserInfos[100]={0};

面试网

      FillUserInfo(arUserInfos); 求职面试

     

面试问题

      printf("The first name is:");

求职面试

      printf(arUserInfos[0].szName); 求职信息

      printf("\n"); 求职面试

 

礼仪

      return 0;

面试网

}

求职面试

2.      假设你在编写一个使用多线程技术的程序,当程序中止运行时,需要怎样一个机制来安全有效的中止所有的线程?请描述其具体流程. qzm4

面试问题

礼仪

qzm4

面试网

面试问题

求职面试

礼仪

面试网

声明:腾讯技术类校园招聘笔试试题来源于互联网,其版权均归原作者及其网站所有,本站虽力求保存原有的版权信息,但由于诸多原因,可能导致无法确定其真实来源,如果您对本站文章、图片资源的归属存有异议,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意!

相关文章