腾讯2016研发工程师笔试题目解析
版权申诉
5 浏览量
更新于2024-09-09
收藏 484KB PDF 举报
"这份资料是腾讯2016年研发工程师笔试题的一部分,包含了编程题目和相关解答,主要考察编程基础、指针操作、数组与内存管理、面向对象编程以及操作系统权限设置等知识。"
1. 父子站法问题:这是一个组合数学问题,涉及到排列组合中的不相邻问题。可以使用插空法解决,首先将三对父子之外的两个人看作障碍物排好,然后在这些障碍物之间和两端插入三对父子,使得每对父子都不相邻。总共有5个位置可以插入,所以插空法公式为 C(5,3) * 3! = 120 种站法。正确答案是120。
2. C++程序错误分析:
- (1) 和 (2) 没有错误,定义了常量指针和指向常量的指针。
- (3) 错误,尝试将一个指向常量的指针赋值为一个普通变量的地址,违反了常量指针的规则。
- (4) 没有错误,定义了一个指向常量的指针并初始化为指向i的地址。
- (5) 错误,试图通过常量指针修改常量,这是不允许的。
- (6) 错误,尝试通过指向常量的指针修改变量j的值。
- (7) 错误,尝试将一个指向常量的指针赋值为另一个变量的地址,违反了指针常量的规则。
正确答案是1, 3, 5, 6。
3. C语言代码段输出问题:
这段代码涉及到了数组和指针的概念。数组a的地址是一个指针,&a+1会跳过整个数组,所以p-1实际上指向的是数组a的最后一个元素的下一个位置,这在内存中是未定义的区域。因此,这段代码将产生错误,无法正常输出。
4. 特征值和特征向量问题:
如果k1和k2是矩阵A的不同特征值,那么对应的特征向量a和b必定线性无关,因为如果它们线性相关,那么根据线性代数的定义,一个特征值的所有特征向量应该构成一个线性空间,而这里有两个不同的特征值,意味着特征向量不可能是线性相关的。
5. C++继承与多态问题:
结构体A有一个虚函数bar(),结构体B继承自A并重写了foo()和bar()。创建B类型的对象p,并用A类型的指针指向它,调用foo()时,由于没有 virtual 关键字,调用的是基类的foo(),输出 "foo";调用bar()时,由于bar()是虚函数,会调用派生类的bar(),输出 "b_bar"。因此,输出为 "foo b_bar"。
6. Linux文件权限设置:
使用 `chmod` 命令可以改变文件的权限,要使所有用户对file1具有读、写、执行权限,应使用 `chmod 777 file1`。而要将file1的所有者改为test,拥有组改为user,使用 `chown test:user file1`。
这份笔试题涵盖了数组、指针、常量指针、面向对象编程、组合数学、线性代数、文件权限等多个IT领域的基础知识。通过解答这些问题,考生可以检验自己的编程技能和理论理解。
129 浏览量
138 浏览量
115 浏览量
205 浏览量
199 浏览量
115 浏览量
193 浏览量
204 浏览量
java李杨勇
- 粉丝: 37w+
最新资源
- 探索Eclipse下的SWT:跨平台GUI开发的解决方案
- 探索程序问题:echo、@、Goto等工具在垃圾信息中的应用与注意事项
- JasperReports终极指南:报表设计与开发
- 基于微分几何理论的混沌同步研究
- 微分几何驱动的飞机登机策略优化
- C# 将 DataTable 数据导出为 DBF 文件
- Eclipse教程:详解如何使用WTP开发Web服务
- GCC中文手册:Linux开发必备
- 揭秘嵌入式操作系统:必备知识点与应用优势
- PHP初学者指南:简易分页实现
- ExtJS2.0入门与实战教程:提升Web应用体验
- EasyJWeb:企业级Java Web开发框架解析
- 华为网络实验手册:打造计算机网络实战能力
- 理解IoC与Dependency Injection:控制反转与组件装配
- 主题重要性与专题搜索策略:魏本洁的研究
- Adobe Flex工作原理与首个应用开发简介