迅雷2014校园招聘笔试题

【笔试卷】WANGLONG 下面哪些是非法的模板声明 A.template<typename myT,class myT>class C1{} B.template<class myT,myU,class myV>class CC{} C.template<class myT,typename myU>class CCC{} D.template<class Type>class C2{} 在多线程环境下,以下int 阅读详情
转载请标明出处,原文地址:http://blog.youkuaiyun.com/hackbuteer1/article/details/11482103
温馨提示:客观题和主观题得分都要超过一定标准,才能获得面试资格,如果一项得分很高,而另外一项得分很低,可能无法获得面试资格。
一、单选题(20题,每题2分)
1、有变量int i = 0; int a = i++; int b=++a; int c = a+b; 请问表达式 a?b:c 的值是()
A、0              B、1              C、2             D、3

2、32位环境下,int *p=new int[10];请问sizeof(p)的值为()
A、4              B、10              C、40               D、8

3、有语句char str[] = "abcde";请问表达式sizeof(str)的值是()    后面还有\0
A、1              B、4               C、5                D、6

4、有函数int func(int i)的实现为()
int func(int i)
{
	if(i > 1)
		return i*func(i-1);
	else
		return 1;
}
请问函数调用f(5)的返回值是多少()阶乘计算
A、5              B、15              C、20               D、120

5、请问以下说法,哪个是正确的()
A、每个类都有一个无参数的构造函数
B、每个类都有一个拷贝构造函数
C、每个类能有多个构造函数
D、每个类能有多个析构函数

6、用class关键字定义的类,其成员默认的访问属性为()
A、private         B、protected      C、public           D、无定义

7、类的成员有三种访问属性,分别是public、protected、private,子类能够访问的成员是()
A、都能访问
B、public和protected
C、public和private
D、protected和private

8、请问对一个排好序的数组进行查找,时间复杂度为()
A、O(n)            B、O(lgn)        C、O(nlgn)          D、O(1)

9、以下二叉树:

后序遍历的结果是()
A、丙乙丁甲戊己              B、甲乙丙丁戊己               C、丙丁乙己戊甲                  D、丙丁己乙戊甲

10、看以下代码:
A *pa = new A[10];
delete pa;
则类A的构造函数和析构函数分别执行了几次()
A、1   1          B、10   10          C、1   10                 D、10   1

11、看以下代码:
class A
{
public:
	~A();
};
A::~A()
{
	printf("delete A ");
}

class B : public A
{
public:
	~B();
};
B::~B()
{
	printf("delete B ");
}
请问执行以下代码
A *pa = new B();
delete pa;
输出的串是()A
A、delete A       B、delete B        C、delete B delete A          D、delete A delete B

12、文件长度是一个大于0的整数,用变量unsigned file_length; 来表示,把文件分成块,每块的长度也是一个大于0的整数,用变量unsigned block_length; 来表示,则文件被分成的块数为()
A、file_length/block_length                                            B、file_length/block_length+1         
C、(file_length+block_length-1)/block_length                 D、((file_length-1)/block_length+1 

13、整数int i = 0xFE78DA45; int k = 0xAC3189B2;则i^k的值为()
A、0x524953f7         B、0xAC308800          C、0xFE79DBF7           D、0X0000001

14、看以下代码:
class parent
{
public:
	virtual void output();
};
void parent::output()
{
	printf("parent!");
}

class son : public parent
{
public:
	virtual void output();
};
void son::output()
{
	printf("son!");
}
则以下程序段:
son s;
::memset(&s , 0 , sizeof(s));
parent& p = s;
p.output();
执行结果是()
A、parent!       B、son!       C、son!parent!           D、没有输出结果,程序运行出错

15、函数的局部变量所需存储空间,是在哪里分配的()
A、进程的数据段      B、进程的栈上    C、进程的堆上       D、以上都可以

16、以下STL的容器存放的数据,哪个肯定是排好序的()
A、vector        B、deque         C、list             D、map

17、int a[][3]={{1},{3,2},{6,7,8},{9}};中a[2][1]的值是()
A、3          B、6        C、2            D、7

18、以下关于头文件,说法正确的是()
A、#include<filename.h>,编译器寻找头文件时,会从当前编译的源文件所在的目录去找
B、#include“filename.h”,编译器寻找头文件时,会从通过编译选项指定的目录去找
C、多个源文件同时用到的全局整数变量,它的声明和定义都放在头文件中,是好的编程习惯
D、在大型项目开发中,把所有自定义的数据类型、全局变量、函数声明都放在一个头文件中,各个源文件都只需要包含这个头文件即可,省去了要写很多#include语句的麻烦,是好的编程习惯。

19、某棵完全二叉树上有699个节点,则该二叉树的叶子节点数为()
A、349             B、350              C、188                D、187
n0=n2+1;
n=n0+n1+n2=n0+n1+n0-1=699 
由于完全二叉树中度为1的节点只有0个或1个两种情况,所以,将0或1带入上面公式,整理后得:  n0=(n+1)/2或者n0=n/2;  看看n是否能被2整除,能则用n0=n/2。否则用n0=(n+1)/2 既叶子节点为n0=(n+1)/2=350


20、在一个指向字符串的指针char *p_str,要把字符串中第4个字符的值改为'a',正确的做法是()
A、p_str[3]='a'             B、*(ptr+3)='a'       C、p_str[4]='a'       D、*(ptr+4)='a'

二、多选题(10题,每题3分,错选漏选都不得分)
1、已知一段文本有1382个字符,使用了1382个字节进行存储,这段文本全部是由a、b、c、d、e这5个字符组成,a出现了354次,b出现了483次,c出现了227次,d出现了96次,e出现了232次,对这5个字符使用哈夫曼(Huffman)算法进行编码,则以下哪些说法正确()
A、使用哈夫曼算法编码后,用编码值来存储这段文本将花费最少的存储空间
B、使用哈夫曼算法进行编码,a、b、c、d、e这5个字符对应的编码值是唯一确定的
C、使用哈夫曼算法进行编码,a、b、c、d、e这5个字符对应的编码值可以有多套,但每个字符编码的位(bit)数是确定的
D、b这个字符的哈夫曼编码值位数应该最短,d这个字符的哈夫曼编码值位数应该最长


2、下列表达式中,不合法的是()
已知:double d = 3.2; int n = 3;
A、d<<2;
B、d/n
C、!d && (n-3)
D、(d-0.2)|n

3、下面描述正确的是()
A、while循环语句的循环体至少执行1次
B、do-while循环可以写成while循环的格式
C、continue语句可以出现在各种循环体中

D、break语句不可以出现在循环体内

4、关于内联函数正确的是()
A、类的私有成员函数不能作为内联函数
B、在所有类说明中内部定义的成员函数都是内联函数
C、类的保护成员函数不能作为内联函数
D、使用内联函数的地方会在运行阶段用内联函数体替换掉

5、下面模板声明中,哪些是非法的()
A、template<class Type>class C1;
B、template<class T,U , class V>class C2;
C、template<class C1 , typename C2>class C3{};
D、template<typename myT , class myT>class C4{};

6、在使用浏览器打开一个网页的过程中,浏览器会使用的网络协议包括()
A、DNS         B、TCP        C、HTTP            D、Telnet

7、下面属于构造散列函数的方法是()
A、直接定址法
B、数字分析法
C、乘余取整法
D、平方取中法


8、拷贝构造函数的特点是()
A、该函数名同类名,也是一种构造函数,该函数返回自身引用
B、该函数只有一个参数,必须是对某个对象的引用
C、每个类都必须有一个拷贝初始化构造函数,如果类中没有说明拷贝构造函数,则编译器系统会自动生成一个缺省拷贝构造函数,作为该类的保护成员
D、拷贝初始化构造函数的作用是将一个已知对象的数据成员值拷贝给正在创建的另一个同类的对象

9、下列关于虚函数的说法正确的是()
A、在构造函数中调用类自己的虚函数,虚函数的动态绑定机制还会生效。
B、在析构函数中调用类自己的虚函数,虚函数的动态绑定机制还会生效。
C、静态函数不可以是虚函数

因为静态成员函数没有this,也就没有存放vptr的地方,同时其函数的指针存放也不同于一般的成员函数,其无法成为一个对象的虚函数的指针以实现由此带来的动态机制。静态是编译时期就必须确定的,虚函数是运行时期确定的。
D、虚函数可以声明为inline

inline函数和virtual函数有着本质的区别,inline函数是在程序被编译时就展开,在函数调用处用整个函数体去替换,而virtual函数是在运行期才能够确定如何去调用的,因而inline函数体现的是一种编译期机制,virtual函数体现的是一种运行期机制。
因此,内联函数是个静态行为,而虚函数是个动态行为,他们之间是有矛盾的。
函数的inline属性是在编译时确定的, 然而,virtual的性质则是在运行时确定的,这两个不能同时存在,只能有一个选择,文件中声明inline关键字只是对编译器的建议,编译器是否采纳是编译器的事情。
我并不否认虚函数也同样可以用inline来修饰,但你必须使用对象来调用,因为对象是没有所谓多态的,多态只面向行为或者方法,但是C++编译器,无法保证一个内联的虚函数只会被对象调用,所以一般来说,编译器将会忽略掉所有的虚函数的内联属性。


相关知识点: 什么函数不能声明为虚函数?
一个类中将所有的成员函数都尽可能地设置为虚函数总是有益的。  
设置虚函数须注意: 
1: 只有类的成员函数才能说明为虚函数; 
2:静态成员函数不能是虚函数; 
3:内联函数不能为虚函数; 
4:构造函数不能是虚函数; 
5:析构函数可以是虚函数,而且通常声明为虚函数。


10、下列对函数double add(int a , int b)进行重载,正确的是()
A、int add(int a ,int b ,int c)
B、int add(double a , double b)
C、double add(double a , double b)

D、int add(int a , int b)
三、填空题(15空,每空2分)
1、以下代码是用来计算100以内的素数的个数,请把相应的空填上。
struct prime_number_node
{
	int prime_number;
	prime_number_node* next;
};

int calc_prime_number()
{
	prime_number_node* list_head = new prime_number_node();
	list_head->next = NULL;
	list_head->prime_number = 2;
	prime_number_node* list_tail = list_head;
	for(int number = 3 ; number < 100 ; number++)
	{
		int remainder;
		prime_number_node* cur_node_ptr = list_head;
		while(cur_node_ptr != NULL)
		{
			remainder = number%cur_node_ptr->prime_number;
			if(remainder == 0)
			{
				//1
			}
			else
			{
				//2
			}
		}
		if(remainder != 0)
		{
			prime_number_node* new_node_ptr = new prime_number_node(); 
			new_node_ptr->prime_number = number;
			new_node_ptr->next = NULL;
			list_tail->next = new_node_ptr;
			//3
		}
	}
	int result = 0;
	while(list_head != NULL)
	{
		result++;
		prime_number_node* temp_ptr = list_head;
		list_head = list_head->next;
		//4
	}
	return result;
}
1、2、3、4四行代码依次为:break;
cur_node_ptr = cur_node_ptr->next;
list_tail = list_tail->next; 
delete temp_ptr;

2、已知集合A和B的元素分别用不含头结点的单链表存储,函数difference()用于求解集合A与B的差集,并将结果保存在集合A的单链表中。例如,若集合A={5,10,20,15,25,30},集合B={5,15,35,25},完成计算后A={10,20,30}。
链表结点的结构类型定义如下:
struct node
{
	int elem;
	node* next;
};

void difference(node** LA , node* LB)
{
	node *pa , *pb , *pre , *q;
	pre = NULL;
	            //1
	while(pa)
	{
		pb = LB;
		while(   )                 //2
			pb = pb->next;
		if(    )                   //3
		{
			if(!pre)
				*LA =      ;     //4
			else
				 = pa->next;     //5
			q = pa;
			pa = pa->next;
			free(q);
		}
		else
		{
			       ;             //6
			pa = pa->next;
		}
	}
}
1、2、3、4、5、6六行代码依次为
pa = *LA;
pb && pa->elem != pb->elem
pb
pa->next
pre->next
pre = pa;
代码中的指针pa用于指向集合A的元素;pb指向集合B的元素;临时指针q指向需要被删除的元素;pre用于实现删除时结点的链接,与pa保持所指结点的前后继关系。














转载请标明出处,原文地址: http://blog.youkuaiyun.com/hackbuteer1/article/details/11482103
2014迅雷校园招聘笔试题答案 目前暂时只做了选择题部分,仅供参考,祝愿大家和我今年都能找到满意的工作~ 选择题答案部分 单选题 1.B 2.A p为指针,32位地址的指针大小为4个字节 3.D str为数组,勿忘最后有一个'\0' 4.D 5.C A:用户自定义了构造函数编译器不会合成无参构造函数 B:?一个类可以有多个拷贝构造函 阅读详情

相关推荐

【OpenCV】复杂场景下的高精度圆检测实战(附完整代码)

本文针对OpenCV霍夫圆检测在复杂场景下易失效的问题,提出了一套基于轮廓分析的高精度圆检测实战方案。通过图像预处理、轮廓发现及多轮几何筛选(面积、周长、椭圆拟合、多边形逼近),有效排除噪声和类圆干扰物,显著提升复杂场景下的检测鲁棒性,并附完整可调参的Python代码实现。

weixin_29095587的博客 200

迅雷2013C++笔试卷B

1 下列for循环的循环体执行次数为 for(int i=10, j=1; i=j=0; i++, j--) 0 1 无限 以上都不对 2 下面程序的输出结果是 char *p1= “123”, *p2 = “ABC”, str[50]= "xyz"; strcpy(str+2,strcat(p1,p2)); cout xyz123ABC z123ABC xy123ABC

小人物的草稿本 1113

【四季发财中线】通达信炒股指标副图指标使用图文教程,短线紫色柱线操作,与中线短柱线共振抓牛股妖股主升浪

如上图标记位置,对应的是副图指标的紫色柱线开始的位置,这个紫色柱线信号开始出现,也是短线进场做多的信号,紫色柱线的持续出现和加长,可以持股待涨,或行情继续上涨的可以在分时行情中逢低进场短线顺势做多。如上图标记部分,指标的主要部分信号,三行柱线-ZR-ZC -ZM,当出现这三行信号时,中线或波段看多做多,信号持续则中线顺势做多和持股待涨。不论是跟踪信号的出现先后进场和持股,或是在中线多头的行情中,找到短线转多信号进场做安全的短线操作机会,都是非常好的指标信号和辅助操作功能。

weixin_69760830的博客 1602

Jeff精品错题集第二弹C++(二):好多星星!

题一: C++类体系中,不能被派生类继承的有? 正确答案: A B D 你的答案: A B (错误) 构造函数 静态成员函数 非静态成员函数 赋值操作函数 解答: 编译器总是根据类型来调用类成员函数。但是一个派生类的指针可以安全地转化为一个基类的指针。这样删除一个基类的指针的时候,C++不管这个指针指向一个基类对象还是一个派生类的对象,调用的都是基类的析构函数而不是派生类的。如果你依赖于派生类的析构函数的代码来释放资源,而没有重载析构函数,那么会有资源泄漏。所以建议的方式是将析构函数声明为虚函数。 也就

Jeff.Ye的博客 611

别再踩坑了!手把手教你用EB Tresos Studio创建Autosar MCAL工程(含模块配置避坑指南)

本文详细介绍了使用EB Tresos Studio创建Autosar MCAL工程的完整流程,包括工程创建前的关键准备、模块配置的避坑指南以及工程验证与代码生成的实用技巧。通过实战案例和黄金准则,帮助开发者高效完成MCAL工程创建,避免常见错误,提升开发效率。

weixin_42536058的博客 444

Vivado DDR IP自定义型号避坑指南:如何正确填写CSV参数表(附常见错误排查)

本文详细解析了Vivado DDR IP自定义型号配置中的关键步骤与常见问题,特别针对DDR4内存颗粒的参数提取、CSV参数表填写误区及故障排查提供了实用指南。通过实际案例和调试技巧,帮助工程师避免配置陷阱,提升DDR4系统稳定性和性能。

weixin_29280657的博客 414

经典笔试面试题总结(一)

经典面试题

u012361418的博客 1万+

雷达信号处理——恒虚警检测(CFAR)

上图展示的是同时在距离维和多普勒维进行恒虚警检测的原理,如果只是在距离维或多普勒维做CFAR,检测单元的左右两侧均有设定好数量的保护单元和参考单元。不同的CFAR检测器适用于不同的场景,CA-CFAR算法适用于均匀环境中的单目标或彼此相距较远的多目标环境,在邻近多目标环境会发生目标的遮蔽效应,在杂波边缘会发生杂波边缘效应。从图中也可以看到,根据阈值的选择不同,有不同的检测器,其中CA-CFAR是取的参考单元的均值,SO-CFAR取的是参考单元的最小值,而GO-CFAR是取的参考单元的最大值。

诚朴勇毅 3万+

C/C++易错题解析

1.下列程序的输出结果为:(B)   #include void main() { char* a[ ] = { "hello", "the", "world"}; char** pa = a; pa++; cout } A) theworld    B) the   C) ello    D) ellotheworld 分析:考察二维数组和指针的题目,

我的E家 3111

Spark on Yarn 高可用模式部署流程

本文介绍了如何配置Spark和Yarn的高可用(HA)环境,以确保在大规模数据处理中避免单点故障。

xhaoDream的博客 1444

如何用ISBN API快速获取图书信息?Python实战教程(附完整代码)

本文是一篇Python实战教程,详细介绍了如何利用ISBN API高效获取图书元数据。内容涵盖从API服务选择、密钥管理,到使用requests库构建健壮的请求模块,并利用Pydantic进行数据验证与解析。教程还提供了批量查询、缓存优化及集成到Flask Web应用等高级技巧,帮助开发者快速实现图书信息的自动化获取与处理。

p8q9r0的博客 456

2014迅雷校园招聘笔试题(C++)

[互联网笔试] 2014迅雷校园招聘笔试题(C++)     这是迅雷在深圳那边招聘的笔试题!!也快到我们武汉来面试笔试了吧~~ 时间:2013-9-7 地点:北京大学深圳研究生院 技术类别:C++开发 说明:图片是按照顺序来的,最后两张是附加题。    9 KB)

chenglinhust的专栏 2735

【华为OD机试真题】141、租车骑绿岛 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

题目描述 >部门组织绿岛骑行团建活动。租用公共双人自行车,每辆自行车最多坐两人,最大载重M。 给出部门每个人的体重,请问最多需要租用多少双人自行车。

KJ.JK 1959

迅雷笔试题2014校园招聘 武汉

huahuahailang的专栏 7518

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

[历年IT笔试题]2014迅雷校园招聘笔试题

SmartSi 306

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

2014迅雷校园招聘(C++)(笔试题(四)

迅雷2014校园招聘笔试题 转载请标明出处,原文地址:http://www.mianwww.com/html/2013/10/19169.html 温馨提示:客观题和主观题得分都要超过一定标准,才能获得面试资格,如果一项得分很高,而另外一项得分很低,可能无法获得面试资格。 一、单选题(20题,每题2分) 1、有变量int i = 0; int a = i++; int b=++a;

SelfImprovement 1789

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

2014迅雷校园招聘笔试题

445822357 90
上一篇: PPS2013校园招聘笔试题
下一篇: 阿里巴巴集团2014秋季校园招聘笔试题
hackbuteer1
博客等级 码龄15年 1万+粉丝 251原创
评论 45
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值