[计算机类试卷]国家二级C++机试(选择题)模拟试卷123及答案与解析.doc

上传人:towelfact221 文档编号:497799 上传时间:2018-11-30 格式:DOC 页数:25 大小:61.50KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(选择题)模拟试卷123及答案与解析.doc_第1页
第1页 / 共25页
[计算机类试卷]国家二级C++机试(选择题)模拟试卷123及答案与解析.doc_第2页
第2页 / 共25页
[计算机类试卷]国家二级C++机试(选择题)模拟试卷123及答案与解析.doc_第3页
第3页 / 共25页
[计算机类试卷]国家二级C++机试(选择题)模拟试卷123及答案与解析.doc_第4页
第4页 / 共25页
[计算机类试卷]国家二级C++机试(选择题)模拟试卷123及答案与解析.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、国家二级 C+机试(选择题)模拟试卷 123及答案与解析 一、选择题 1 算法的时间复杂度是指 ( )。 ( A)算法的长度 ( B)执行算法所需要的时间 ( C)算法中的指令条数 ( D)算法执行过程中所需要的基本运算次数 2 以下数据结构中,属于非线性数据结构的是 ( )。 ( A),栈 ( B)线性表 ( C)队列 ( D)二叉树 3 数据结构中,与所使用的计算机无关的是数据的 ( )。 ( A)存储结构 ( B)物理结构 ( C)逻辑结构 ( D)线性结构 4 内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是 ( )。 ( A)顺序内聚 ( B)偶然内聚 ( C)时间内聚 (

2、D)逻辑内聚 5 在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的 ( )。 ( A)连接码 ( B)关系码 ( C)外码 ( D)候选码 6 检查软件产品是否符合需求定义的过程称为 ( )。 ( A)确认测试 ( B)需求测试 ( C)验证测试 ( D)路径测试 7 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是 ( )。 ( A)控制流 ( B)加工 ( C)存储文件 ( D)源和潭 8 待排序的关键码序列为 (15, 20, 9, 30, 67, 65, 45, 90),要按

3、关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码 15被放到第 ( )个位置。 ( A) 2 ( B) 3 ( C) 4 ( D) 5 9 对关系 S和关系 R进行集合 运算,结果中既包含关系 S中的所有元组也包含关系 R中的所有元组,这样的集合运算称为 ( )。 ( A)并运算 ( B)交运算 ( C)差运算 ( D)除运算 10 下列选项中,不属于数据管理员 (DBA)职责的是 ( )。 ( A)数据库维护 ( B)数据库设计 ( C)改善系统性能,提高系统效率 ( D)数据类型转换 11 假定 MyClass为一个类,则该类的拷贝构造函数的声明语句为 ( )。 ( A) M

4、yClass(MyClass x); ( B) MyClass(MyClass x); ( C) MyClass( x); ( D) MyClass(x); 12 下列函数的功能是判断字符串 str是否对称,对称则返回 true,否则返回 false,则横线处应填上 ( )。 Bool fun(ehar*str) int i=0, i=0; while(strD)j+; for(j-; i- ( B) ( C) ( D) using namespace std; class Complex public: Complex(double r=0, double i=0): re(r), im(i

5、) double real()constreturn re; double imag()constreturn im; Complex operator+(Complex c)constreturn Complex(re+c re, im+c im); ) private: double re, im; ; int main() Complex a=Complex(1, 1)+Complex(5); cout #define MAX(x, y)(x)(y)?(x): (y) void main() int i, j, k; i=10; j=15; k=MAX(i, j)*10; cout vo

6、id main() char a=“abbcabbcabbc“; int i=0, j=0, k=0; while(ai) if(ai=a) j+; if(ai=b) k+; i+: cout int fun(int n); void main() couta; result=fun(a); tout void main() int x; int y=x; 变量引用 31=99; cout void fun(int a, int b) int temp; temp=a; a=b; b=temp; void main() int m, n; m=1; n=2: fun(m, n); cout v

7、oid main() static int b3=1, 2, 3, 4, 5, 6; b02=12, b12=18; cout using namespace std; void fun(int r) r*=2; int main() intn=50; fun(n); cout class A1 public: void show1() cout #include using namespace std; class point private: double x: double y; public: point(double a, double b) x=a; y=b; friend dou

8、ble distances(point a, point b); ; double distances(point a, point b) return sqrt(a x-b x)*(a x-b x)+(a y-b y)*(a y-b y); int main() point p1(1, 2); point p2(5, 2); cout using namespace std; class R public: R(int r1, int r2) R1=r1; R2=r2; void prim(); void printoconst; private: int R1, R2; ; void R:

9、 print() cout using namespace std; template T fun(T a, T b)return(ay)?(x): (y)是当 x大于 y时取 x,否则取 y。当 i: 10, j=15时, “MAX(i, j)”的值为 15,所以 “k=MAX(i, i)*10; ”答案为: 150。 15 【正确答案】 B 【试题解析】 enum;其中:关键词 “enum”表示定义的是枚 举类型,枚举类型名由标识符组成,而枚举元素表由枚举元素或枚举常量组成。本题中的枚举类型中的数据值 Wednesdav为 2,而 Fridayr的值赋值为2,所以判断 Wednesdayr

10、等于 Fridav的表达式值为真,即 true。 16 【正确答案】 D 【试题解析】 程序中首先定义字符数组 a,然后在 while循环中统计字符 a和 b的个数。其中 j记录 a的个数, k记录 b的个数。,第一个 if语句是当第 i个字符为 a时, i加 1;第二个 if语句是当第 i个字符为 b时, k加 1。 17 【正确答案】 C 【试题解 析】 由程序 main主函数入手,调用 fun函数获得返回值 result输出。题目中假定 a=3,即调用语句 fun(a)中的输入参数为 a,进入 fun函数,在 for循环中当 i小于等于 n,即输入参数 3时,循环 3次执行 “p*=i;

11、 restllt+=p: ”语句。即执行三次 p=p*i, result=restult+p result的结果为 9 返回的 fun函数结果为9,即 “coutresultendl; ”输出 9。 18 【正确答案】 D 【试题解析】 指针变量如果指向一个数组的元素,则可以进行比较,所以 A)是正确的。指针变量的赋值就是将一个变量地址赋给一个指针变量。并且指针变量可以是空值,即该指针不指向任何变量。 B)同样也是正确的。指针变量加减一个整数是将该指针变量的原值 (是一个地址 )和它指向的变量所占用的内存单元字节数相加或相减。即 C)也是正确的。如果两个指针指向同一个数组元素,两个指针是可以相

12、减的,杯识两个指针之间的元素个数。但是它们是不可相加的。 19 【正确答案】 A 【试题解析】 程序中的 “int y=x: ”语句中的 “ ”引用运算符。 y=x语句可以理解为 y,具有 x的地址,所以 y的值 99, x的值也是 99,所以答案是 x=99。 20 【正确答案】 A 【试题解析】 函数 fun中定义的参数 a和 b为形式参数,它们并不是实际存在的数据,只有在发生函数调用时才被分配内行空间,结束后,形参所占有的内存单元也被释放。并且函数 fun没有返回值,它做的交换操作,并不能影响实际参数m和 n。所以输出值保持不变,仍然是 1和 2,即输出: 12。 21 【正确答案】 A

13、 【试题解析】 选项 B)、 C)、 D)都是获取 a(1)元素,而选项 A)是获取 a(0)的元素。 22 【正确答案】 B 【 试题解析】 数组作为参数实参传递的是数组的首地址。所以主函数和被调函数共用一段存储单元。 23 【正确答案】 C 【试题解析】 可以在类的构造函数中对静态数据成员进行初始化。 24 【正确答案】 D 【试题解析】 在一个个类中可以定义多个构造函数,以便对类对象提供不同的初始化的方法,供用户选用。这些构造函数具有相同的名字,而参数的个数或参数的类型不相同。 25 【正确答案】 A 【试题解析】 本题 b是一个 33的二维数组:利用指针表示数组: *(*数组名 -i)

14、+j)*b表示 b00元素,值是 1, *(b+1)表示是 b01的元素,值是 4。*(*(b+1)+2)表示 b12的元素,值是 18, b02+b12+b22之和是 30。 26 【正确答案】 D 【试题解析】 题中主程序中首先定义整型变量 n=50,然后调用函数 fun,实际参数为 n。函数 fun中参数为引用,为地址。即函数中形参的改变会影响实参的值,函数的功能是参数乘以 2。 27 【正确答案】 B 【试题解析】 此题考查的是继承时基类成员属性改变。选项 B)中,公有继承时基 类中的 private成员在派生类中不是 private的,而是不可访问的。所以选项 B)错误;其他选项叙述

15、均正确。 28 【正确答案】 C 【试题解析】 多继承派生类的构造顺序是:首先调用虚基类的构造函数,然后调用非虚基类的构造函数按照它们被继承的顺序构造,其次调用子对象的构造函数,最后是派生类构造函数中的内容。 29 【正确答案】 D 【试题解析】 析构函数可以声明为虚函数,但是构造函数不能声明为虚函数;类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响。 30 【正确答案】 C 【试题解析】 由于 classA3: protectedA2,所以类 A3的对象 obi3不能直接访问基类 A1的成员函数 showlf),所以选项 C)是错误的;其他选项均有访问的权限,正确。 31 【正确

16、答案】 D 【试题解析】 重载的运算符仍要保持其原来的操作数、优先级和结合性不变。 32 【正确答案】 B 【试题解析】 分析题目,最终要实现的结果是 sqrt(a xb x)*(a xb x)+(a yb y)*(a yb y),其中的 a x和 a y分别指 p1(1, 2)中的 1和 2。这样容易得到结果是 (1-5)*(1-5)+(2-2)*(2-2)=16,再开方得到结果为 4。 33 【正确答案】 C 【试题解析】 此题中,语句 R a(5, 4)调用构造函数 R(int r1, int r2),但未有输出结果; b print();调用常成员函数 (因为 b是常对象 )void

17、print()const,输出结果是 20, 52。 34 【正确答案】 B 【试题解析】 此函数模板的功能是输出 a、 b两数中较小的那个数。 (3, 6)输出3, (3 14F, 6 28F)输出 3。 14。 35 【正确答案】 B 【试题解析】 类模板不是一个实实在在的类,本身在编译中不会生成任何代码;用类模板定义一个对象时,不能省略实参:类模板的成员函数都是模板函数。 C+中可以为类模板的参数设置默认值,所以选项 B)错误。 36 【正确答案】 D 【试题解析】 如果一个模板声明列出了多个参数,则每个参数之间必须使用逗号隔开,每个参数都必须使用 class关键字来修饰。 37 【正确

18、答案】 D 【试题解析】 this指针是成员函数所属对象的指针,它指向类对象的地址;它隐含于每个类的非 静态成员函数中; this指针只能在类的成员函数中使用,它指向该成员函数被调用的对象;静态成员函数没有 this指针,因为类中只有一个静态成员函数实例,使用 this指针无意义。 38 【正确答案】 C 【试题解析】 此题考查的是函数重载的概念。在 C+语言中,允许定义一系列函数名相同,但形参的个数和类型不完全相同的函数,即函数的重载。重载函数对返回值类型不做要求,返回值类型也不参与区分函数的重载形式。故选项 C)错误。 39 【正确答案】 B 【试题解析】 此题考查的是构造函数。如果一个类中没 有定义任何构造函数,编译器将生成一个不带参数的公有缺省构造函数。但只要定义了一个任意的构造函数,就不会生成缺省构造函数了。 40 【正确答案】 D 【试题解析】 此题考查的是派生类的构造函数和析构函数。在撤销派生类对象时,析构函数的执行过程和构造函数严格相反,即:对派生类新增普通成员进行清理;调用成员对象析构函数,调用基类析构函数对基类进行清理。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1