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


Posted in 面试题 onMay 06, 2014
一. 单选题(每题4分,15题,共60分)
1.考虑函数原型void hello(int a,int b=7,char* pszC=”*”),下面的函数调用钟,属于不合法调用的是:
A hello(5) B.hello(5,8) C.hello(6,”#”) D.hello(0,0,”#”)
2.下面有关重载函数的说法中正确的是:
A.重载函数必须具有不同的返回值类型 B.重载函数形参个数必须不同
C.重载函数必须有不同的形参列表 D.重载函数名可以不同
3.分析一下程序的运行结果:
#include
class CBase
{
public:
CBase(){cout ~CBase(){cout };
class CSub : public CBase
{
public:
CSub(){cout ~CSub(){cout };
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
D. constructing CSub class
constructing CBase class
destructing CBase class
destructing CSub class
4.在一个cpp文件里面,定义了一个static类型的全局变量,下面一个正确的描述是:
A.只能在该cpp所在的编译模块中使用该变量
B.该变量的值是不可改变的
C.该变量不能在类的成员函数中引用
D.这种变量只能是基本类型(如int,char)不能是C++类型
5.观察下面一段代码:
class ClassA
{
public:
virtual ~ ClassA(){};
virtual void FunctionA(){};
};
class ClassB
{
public:
virtual void FunctionB(){};
};
class ClassC : public ClassA,public ClassB
{
public:
};

ClassC aObject;
ClassA* pA=&aObject;
ClassB* pB=&aObject;
ClassC* pC=&aObject;
关于pA,pB,pC的取值,下面的描述中正确的是:
A.pA,pB,pC的取值相同. B.pC=pA+pB
C.pA和pB不相同 D.pC不等于pA也不等于pB
6.参照1.5的代码,假设定义了ClassA* pA2,下面正确的代码是:
A.pA2=static_cast(pB);
B.void* pVoid=static_cast(pB);
pA2=static_cast(pVoid);
C.pA2=pB;
D.pA2=static_cast(static_cast(pB));
7.参照1.5的代码,下面那一个语句是不安全的:
A.delete pA B.delete pB C.delete pC
8.下列程序的运行结果为:
#include
void main()
{
int a=2;
int b=++a;
cout A.0.5 B.0 C0.7 D.0.6666666-
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.下面的模板声明中,正确的是:
A.template
B.template
C.template
D.template
12.在Windows编程中下面的说法正确的是:
A.两个窗口,他们的窗口句柄可以是相同的 B.两个窗口,他们的处理函数可以是相同的
C.两个窗口,他们的窗口句柄和窗口处理函数都不可以相同.
13.下面哪种情况下,B不能隐式转换为A?
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地址的计算机可以访问外部网络
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中.
程序用一棵有序二叉树存储这些单词及其出现的次数,一边读入一边建立.然后中序遍历该二叉树,将遍历经过的二叉树上的节点的内容输出.
程序中的外部函数
int getword(FILE* pFile,char* pszWordBuffer,int nBufferLen);
从与pFile所对应的文件中读取单词置入pszWordBuffer,并返回1;若单词遇文件尾,已无单词可读时,则返回0.
#include
#include
#include
#include

#define SOURCE_FILE “text.in”
#define OUTPUT_FILE “word.out”
#define MAX_WORD_LEN 128

typedef struct treenode
{
char szWord[MAX_WORD_LEN];
int nCount;
struct treenode* pLeft;
struct treenode* pRight;
}BNODE;

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

void binary_tree(BNODE** ppNode,char* pszWord)
{
if(ppNode != NULL && pszWord != NULL)
{
BNODE* pCurrentNode = NULL;
BNODE* pMemoNode = NULL;
int nStrCmpRes=0;

____(1)_____;pCurrentNode=*ppNode

while(pCurrentNode)
{
/*寻找插入位置*/
nStrCmpRes = strcmp(pszWord, ___(2)___ );pCurrentNode->nCount

if(!nStrCmpRes)
{
___(3)___; pCurrentNode->nCount++

return;
}
else
{
___(4)___; pMemoNode=pCurrentNode
pCurrentNode = nStrCmpRes>0? pCurrentNode->pRight : pCurrentNode->pLeft;
}
}
}

pCurrent=new BNODE;

if(pCurrentNode != NULL)
{
memset(pCurrentNode,0,sizeof(BNODE));
strncpy(pCurrentNode->szWord,pszWord,MAX_WORD_LEN-1);
pCurrentNode->nCount=1;
}

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);
midorder(pFile,pNode->pRight);
}

void main()
{
FILE* pFile=NULL;
BNODE* pRootNode=NULL;
char szWord[MAX_WORD_LEN]={0};

pFile=fopen(SOURCE_FILE,”r”);

if(pFile==NULL)
{
printf(“Can’t open file %s\n”,SOURCE_FILE);
return;
}

while(getword(pFile,szWord,MAX_WORD_LEN)==1)
{
binary_tree(___(7)___);// pRootNode,szWord
}

fclose(pFile);

pFile=fopen(OUTPUT_FILE,”w”);
midorder(pFile,pRootNode);
fclose(pFile);
}
三. 附加题(每题30分,2题,共60分)
1. 从程序健壮性进行分析,下面的FillUserInfo函数和Main函数分别存在什么问题?
#include
#include

#define MAX_NAME_LEN 20

struct USERINFO
{
int nAge;
char szName[MAX_NAME_LEN];
};

void FillUserInfo(USERINFO* parUserInfo)
{
stu::cout
int nCount=0;
std::cin>>nCount;

for(int i=0;i {
std::cout std::cin>>parUserInfo[i]->nAge;

std::string strName;
std::cout std::cin>>strName;
strcpy(parUserInfo[i].szName,strName.c_str());
}
}

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

Tags in this post...

面试题 相关文章推荐
抽象方法、抽象类怎样声明
Oct 25 面试题
递归实现回文判断(如:abcdedbca就是回文,判断一个面试者对递归理解的简单程序)
Apr 28 面试题
"序列点" 是什么
Jul 29 面试题
当我正在为表建立索引的时候,SQL Server 会禁止对表的访问吗
Apr 28 面试题
解释DataSet(ds) 和 ds as DataSet 的含义
Jul 27 面试题
软件工程师面试题
Jun 25 面试题
MIS软件工程师的面试题
Apr 22 面试题
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
Jun 27 面试题
一些关于MySql加速和优化的面试题
Jan 30 面试题
怎样自定义一个异常类
Sep 27 面试题
介绍一下Java中的static关键字
May 12 面试题
建龙钢铁面试总结
Apr 15 面试题
RealTek面试题
Jun 28 #面试题
阿尔卡特(中国)的面试题目
Aug 20 #面试题
编程实现当输入某产品代码则打印出该产品记录的功能
May 03 #面试题
我想声明一个指针并为它分配一些空间, 但却不行。这些代码有什么 问题?char *p; *p = malloc(10);
Oct 06 #面试题
以下的初始化有什么区别
Dec 16 #面试题
为什么如下的代码int a=100,b=100;long int c=a * b;不能工作
Nov 29 #面试题
对于没有初始化的变量的初始值可以作怎样的假定
Oct 12 #面试题
You might like
用php实现百度网盘图片直链的代码分享
2012/11/01 PHP
PHP实现的DES加密解密封装类完整实例
2017/04/29 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
2019/10/16 PHP
JavaScrip单线程引擎工作原理分析
2010/09/04 Javascript
关于onchange事件在IE和FF下的表现及解决方法
2014/03/08 Javascript
jQuery Masonry瀑布流插件使用详解
2014/11/17 Javascript
第十篇BootStrap轮播插件使用详解
2016/06/21 Javascript
详解基于Node.js的微信JS-SDK后端接口实现代码
2017/07/15 Javascript
JavaScript实现的数字与字符串转换功能示例
2017/08/23 Javascript
详解在vue-cli中引用jQuery、bootstrap以及使用sass、less编写css
2017/11/08 jQuery
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
JS调用安卓手机摄像头扫描二维码
2018/10/16 Javascript
实现vuex与组件data之间的数据同步更新方式
2019/11/12 Javascript
微信小程序上传帖子的实例代码(含有文字图片的微信验证)
2020/07/11 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
python操作mongodb根据_id查询数据的实现方法
2015/05/20 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
selenium+python自动化测试之页面元素定位
2019/01/23 Python
python中的RSA加密与解密实例解析
2019/11/18 Python
Python 爬取必应壁纸的实例讲解
2020/02/24 Python
matplotlib之属性组合包(cycler)的使用
2021/02/24 Python
CSS3中31种选择器使用方法教程
2013/12/05 HTML / CSS
英国香水店:The Perfume Shop
2017/03/27 全球购物
建筑实习自我鉴定
2013/10/18 职场文书
外贸业务员的岗位职责
2013/11/23 职场文书
《兰亭集序》教学反思
2014/02/11 职场文书
毕业留言寄语大全
2014/04/10 职场文书
老师对学生的评语
2014/04/18 职场文书
活动策划求职信模板
2014/04/21 职场文书
群众路线组织生活会发言材料
2014/10/17 职场文书
大学生学年个人总结
2015/02/15 职场文书
2016三严三实专题教育活动心得体会
2016/01/06 职场文书
护士岗前培训心得体会
2016/01/08 职场文书
标准版个人借条怎么写?以及什么是借条?
2019/08/28 职场文书
创业计划书之闲置物品置换中心
2019/12/25 职场文书
SpringBoot实现异步事件驱动的方法
2021/06/28 Java/Android