“华为杯”研究生程序设计大赛笔试题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
19591470.xls文档密级:序号类型题目
1判断题理论上利用栈可以将任何递归算法改为非递归算法。
2判断题在冒泡排序中,关键字都是朝着某个方向移动。
3判断题应当尽可能设计功能全面、灵活的数据结构,以提高效率
4判断题断言可以用来处理程序的任何错误情况。
5判断题若两个结构间关系较复杂、密切,那么应合为一个结构。
6判断题#pragma指令可激活或者终止编译程序所支持的一些编译功能。
7判断题全局变量定义在被多个.C文件包含着的头文件中,是不符合规范的。
8判断题父类的析构函数是非虚的,但是子类的析构函数是虚的,delete子类
9判断题在静态成员函数内部可以直接访问类的所有成员变量和成员函数。
10判断题二叉树的前序、中序、后序遍历常用递归方式实现。
1单选题二分查找有序表(6,15,30,37,65,68,70,72,89,99),若查找元素37,需依次与表中元素(D)进行比较。
A. 65,15,37
B. 68,30,37
C. 65,15,30
D. 65,15,30,37
2单选题对于下面的类CA,在32位计算机、4字节对齐的情况下,sizeof(CA) = ____:class CA
{
public:
CA();
virtual ~CA();
private:
int m_iTime;
public:
int GetTime();
int SetTime(int iTime);
};
3单选题下面对的描述正确的是:
A.父类的友元类可以访问子类保护成员B.子类的友元类可以访问父类的私有成员C.子类可以访问父类的保护成员
D.父类可以访问子类的保护成员
4单选题在系统实现递归调用时需利用递归工作记录保存实际参数的值。在传值参数情形,需为对应形式参数分配空间,以存放实际参数的副本;在引用参数情形,需保存实际参数的( ),在被调用程序中可直接操纵实际参数。
A、空间
B、副本
C、返回地址
D、地址
5单选题下面那种情形下myfunc函数声明是重载?
A. int myfunc(int a,double b) 和 double myfunc(int a, double b)
B. int myfunc(int a,double b) 和 int myfunc(int a,double b=0.5)
C. int myfunc(int a,double b) 和 int myfunc(double b,int a)
D. int myfunc(int a,double b) 和 double myfunc(int , double )
6单选题#include < iostream.h>
class A {
public:
virtual void f() { cout<<"A::f()\n"; } };
class B:public A
{
private:
char *buf;
public:
7单选题下面哪种变量定义不当,可能导致堆栈溢出?
A、静态全局变量
B、动态全局变量
C、静态局部变量
D、动态局部变量
8单选题在一个请求页式存储管理中,一个程序的页面走向为4、3、2、1、3、5、4、3、2、1、5,并采用LUR算法。设分配给该程序的存储块数M分别为3和4,在该访问中发生的缺页次数F和缺页率f 是( )
A. ①M=3,F=8、f≈67% ②M=4,F=5、f≈42%
B.①M=3,F=10、f=83% ②M=4,F=8、f≈67%
C.①M=3,F=9、f≈75% ②M=4,F=IO、f≈83%
D.①M=3,F=7、f≈58% ②M=4,F=6、f=50%
9单选题若已定义:int a[9],*p=a;并在以后的语句中未改变p的值,能表示a[1] 地址的表达式是
A、++a
B、a++
C、++p
D、p++
10单选题对于预处理程序,下面说法不正确的是:
A、编译程序对程序进行通常的编译之前,会先运行预处理程序。
B、开发人员可以看见预处理程序的运行。
C、预处理程序会将宏和常量标识符用相应的代码和值代替。
D、预处理指令会告诉预处理程序如何修改源代码。
11单选题int *(*ptr)();
则以下叙述中正确的是()
A) ptr是指向一维组数的指针变量
B) ptr是指向int型数据的指针变量
C) ptr是指向函数的指针,该函数返回一个int型数据
D) ptr是指向函数的指针,该函数的返回值是指向int型数据的指针
12单选题设有以下宏定义:
#define N 3
#define Y(n) ((N+1)*n) /*这种定义在编程规范中是严格禁止的*/则执行语句:z = 2 * (N + Y(5 + 1));后,z的值为()
A) 出错 B) 42 C) 48 D)54
13单选题
请选择下面树形结构深度优先遍历出来的结果:
14单选题一个C++头文件内容如下:(前面的数字为行号)
1 typedef unsigned char _UC;
2 int ival;
3 extern void dummy() {};
4 extern int jval;
请问,那几行容易导致错误?____:
A. 1和2 B 3和4 C 2和3 D 1和4 E 2和4 F 1和3
15单选题设有如下定义:
unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr;
则下列程序段的输出结果为( )
pulPtr = pulArray;
*(pulPtr + 2) += 2;
1多选题请阅读如下代码,下面各个选项中的哪些答案能应用于赋值表达式处?()
int main(int argc, char* argv[])
{
int a[10];
int *p = NULL;
2多选题阅读下面的代码,请选出正确的描述#include <iostream>
class A
{
public:
bool doSomething();
3多选题请阅读如下代码,比较代码一与代码二的区别,选择正确的说法____:
//代码一
int *func(int, int)
{
...
return 0;
};
4多选题下列关于算法的描述错误的有()
A.算法的执行时间与数据的存储结构无关
B.算法的时间复杂度是指算法中关键语句的条数C.算法的有穷性指算法能保证在合理有限步骤后终止D.算法的空间复杂度是指它对栈的占用情况
5多选题下列关于完全二叉树的描述正确的有()A.中间层的节点数达到最大值
B.允许若干左右叶子结点缺失
C.满二叉树一定是完全二叉树
D.具有n 个结点的完全二叉树深度为