【计算机类职业资格】二级C++分类模拟243及答案解析.doc
《【计算机类职业资格】二级C++分类模拟243及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++分类模拟243及答案解析.doc(18页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+分类模拟 243 及答案解析(总分:75.50,做题时间:90 分钟)一、选择题(总题数:40,分数:75.50)1.在 32 位的计算机中,一个 char 型数据所占的内存长度的字节是_。(分数:2.50)A.4B.1C.2D.82.关于 C+语言与 C 语言关系描述中错误的是(分数:1.00)A.C+语言是 C 语言的超集B.C+语言对 C 语言进行了扩充C.C+语言包含 C 语言的全部语法特征D.C+语言与 C 语言都是面向对象的程序设计语言3.已知表达式+x 中的“+”是作为成员函数重载的运算符,则与+x 等效的运算符函数调用形式为_。(分数:1.00)A.operator+
2、(1)B.operator+(x)C.operator+()D.operator+(x)4.当使用 ifstream 流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为_。(分数:2.00)A.ios_base:inB.ios_base:in | ios_base:outC.ios_base:outD.ios_base:in class Base public: virtual void function1()cout“0“; void function2()out“1“; ; class Derived:public Base oublic: void function1()cou
3、t“2“; void function2()cout“3“; ; int main() Base*p=new Derived(); p-function1(); p-function2(); return 0; 运行时的输出结果是_。(分数:1.00)A.01B.21C.03D.236.用链表表示线性表的优点是 _ 。(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作D.数据元素的物理顺序和逻辑顺序相同7.下列关于派生类的叙述中,错误的是_。(分数:2.50)A.派生类至少要有一个基类B.派生类中包括了从基类继承的成员C.一个派生类可以作为另一个派生类的基类
4、D.基类成员被派生类继承以后访问权限保持不变8.数据流程图(DFD 图)是 _ 。(分数:2.00)A.软件概要设计的工具B.软件详细设计的工具C.结构化方法的需求分析工具D.面向对象方法的需求分析工具9.当使用 ofstream 流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为_。(分数:2.50)A.ios base:inB.ios_base:binaryC.ios base:in|ios_base:outD.ios_base:out10.在软件测试设计中,软件测试的主要目的是 _ 。(分数:2.00)A.实验性运行软件B.证明软件正确C.演示软件的正确功能D.发现软件错误而执
5、行程序11.一个函数为 void(int,char=“a“),另一个函数为 void f(int),则它们 _ 。(分数:1.00)A.不能在同一程序中定义B.可以在同一程序中定义并可重载C.可以在同一程序中定义,但不可以重载D.以上说法均不正确12.若已定义了类 Vehicle,则下列派生类定义中,错误的是_。(分数:2.50)A.class Car:Vehicle/*类体略*/B.class Car:public Car/*类体略*/C.class Car:public Vehicle/*类体略*/D.class Car:virtual public Vehicle/*类体略*/13.执行
6、下面的程序段后,变量 k 的值为 _ 。 int k=3,s2; s0=k; k=s1*10;(分数:1.00)A.不定值B.33C.30D.1014.派生类的成员函数不能访问基类的_。(分数:2.50)A.共有成员和保护成员B.共有成员C.私有成员D.保护成员15.有下列程序: #include stdio.h #include“string.h“ tyoedef structchar name9;char sex;float score2;STU; void f(STU a) STU b=“Zhao“,“m“,85.0,90.0;int i;strcpy(a.name,b.name); a
7、.sex=b.sex; for(i=0;i2;i+)a.scorei=b.scorei; void main() STU c=(“Qian“,“f“,g5.0,92.0); f(c); printf(“%s,%c,%2.of,%2.of/n“,c.name,c.sex, c.score0,c.score1); 程序的运行结果是_。(分数:2.50)A.Qian,f,95,92B.Qian,m,85,90C.Zhao,f,95,92D.Zhao,m,85,9016.若执行下面的程序时,从键盘上输入 5 和 2,则输出结果是_。 # includeiostream.h void main() in
8、t a,b,k; cinab; k=a; if(ab) k=a%b; else k=b%a; coutkendl;(分数:2.50)A.5B.3C.2D.017.C+系统预定了 4 个用于标准数据流的对象,下列选项中不属于此类对象的是_。(分数:2.00)A.coutB.cinC.cerrD.cset18.下列关于函数重载的叙述中,错误的是_。(分数:2.00)A.重载函数的参数个数可以不同B.重载函数的参数类型可以不同C.重载函数的返回值类型必须不同D.重载函数的参数个数或参数类型必须有所不同19.执行语句序列 ofstream outfile(“DATA. DAT“); if(.)cout
9、“OK“;else cout“FAIL“; 后,如果文件打开成功,显示“OK”,否则显示“FAIL”。由此可知,上面 if 语句的处的表达式是_。(分数:2.50)A.outfile.fail()或 outfileB.outfile.good()或!outfileC.out.file.good()或 outfileD.outfile.fail()或!outfile20.有如下程序: #includeiostream using namespace std; int main() void function(double val); double val; function(val); cout
10、val; return 0; void function(double val) val=3; 编译运行这个程序将出现的情况是_。(分数:2.00)A.编译出错,无法运行B.输出:3C.输出:3.0D.输出一个不确定的数21.下列关于虚基类的描述中错误的是(分数:2.00)A.虚基类子对象的初始化由最派生类完成B.虚基类子对象的初始化次数与虚基类下面的派生类个数有关C.设置虚基类的目的是消除二义性D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数调用22.有两个关系 R 和 S 如下: (分数:2.50)A.选择B.投影C.自然连接D并23.有如下 4 个语句: co
11、ut“A“setfill(“*“)leftsetw(7)“B“endl; coutsetfill(“*“)leftsetw(7)“A“B“endl; cout“A“serfill(“*“)rightsetw(7)“B“endl; coutsetfill(“*“)rightsetw(7)“A“B“endl; 其中能显示 A*B 的是_。(分数:2.00)A.和B.和C.和D.和24.有 3 个关系 R、S 和 T 如下: (分数:2.50)A并B.自然连接C.笛卡儿积D交25.下面程序的输出结果是_。 #include iostream using namespace std; int fun(
12、char *s); int main() coutfun(“Hello“); return 0; int fun(char *s) char *t=s; while(*t!=“/0“)t+; return(t-s); (分数:3.00)A.语法错,不能输出正确结果B.5C.6D.026.下列关于模板形参的描述中,错误的是_。(分数:2.50)A.模板形参表必须在关键字 template 之后B.模板形参表必须用括弧()括起来C.可以用 class 修饰模板形参D.可以用 typename 修饰模板形参27.下列叙述中正确的是_。(分数:1.00)A.软件测试应该由程序开发者来完成B.程序经调试
13、后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对28.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是_。(分数:1.00)A.提高耦合性降低内聚性有利于提高模块的独立性B.降低耦合性提高内聚性有利于提高模块的独立性C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度D.内聚性是指模块间互相连接的紧密程度29.已知有数组定义 char a34; 下列表达式中错误的是_。(分数:2.00)A.a2=“WIN“B.strcpy(a2,“WIN“)C.a23=“w“D.a01=a0130.下列字符串中,正确的 C+标识符是 _ 。(分数:2.00)A.foo
14、-1B.2bC.newD._25631.同一概念在一处为实体而在另一处为属性或联系的冲突在视图集成中称为_。(分数:2.50)A.命名冲突B.概念冲突C.域冲突D.约束冲突32.在多继承中,公有派生和私有派生对于基类成员在派生类中的可访问性与单继承的规则 _ 。(分数:2.00)A.完全相同B.完全不同C.部分相同D.以上都不对33.有如下程序: #includeiostream using namespace std; class test private: int a; public: test()cout“constructor“endl; test(int a)coutaendl; t
15、est(const test cout“copy constructor“endl; test()cout“destructor“endl; ; int main() test A(3); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.3B.constructordestructorC.copy constructordestructorD.3destructor34.某二叉树共有 150 个结点,其中有 50 个度为 1 的结点,则_。(分数:1.00)A.不存在这样的二叉树B.该二叉树有 49 个叶子结点C.该二叉树有 50 个叶子结点D.该二叉树有 51 个叶子结
16、点35.下面的叙述中错误的是_。(分数:2.50)A.派生类可以使用 private 派生B.对基类成员的访问必须是无二义性的C.基类成员的访问能力在派生类中维持不变D.赋值兼容规则电适用于多继承的组合36.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是_。(分数:1.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/237.有以下程序: #include iostream using namespace std; int main() int num23,*p; int t,i,j,k=10; p=num0; for
17、(i=0;i2;i+) for(j=0;j3;j+) k+; *p=k; for(t=2;t*p;t+) if(!(*pt) j-; *p-; break; *p+; cout*(p-1)end1; return 0; 程序运行后的输出结果是 _ 。(分数:1.00)A.19B.11C.29D.2338.有如下程序: #includelostream using namespace std; class MyClass public: MyClass() cout “*“; MyClass(MyClass MyClass() cout “; ; int main(); MyClass a; M
18、yclass b(a); return 0; 运行时的输出结果是_。(分数:2.00)A.*#B.#*C.*#D.#*39.将下面类 TestClass 中的函数 fun()的对象成员 n 值修改为 100 的语句应该是 _ 。 class TcstClass public: TestClass(int x)n=x; void SetNum(int n1)n=n1; private: int n; int fun() TestClass * ptr=new TestClass(45); _; (分数:2.00)A.TestClass(100)B.ptr-SetNum(100)C.SetNum(
19、100)D.ptr-n=10040.有如下类定义: class Point private: static int how_many; ; _how_many=0; 要初始化 Point 类的静态成员 how_many,下画线处应填入的内容是_。(分数:1.00)A.intB.static intC.int Point:D.static int Point:二级 C+分类模拟 243 答案解析(总分:75.50,做题时间:90 分钟)一、选择题(总题数:40,分数:75.50)1.在 32 位的计算机中,一个 char 型数据所占的内存长度的字节是_。(分数:2.50)A.4B.1 C.2D.
20、8解析:解析 在 32 位的计算机中,一个 char 型数据所占的内存长度的字节是 1。2.关于 C+语言与 C 语言关系描述中错误的是(分数:1.00)A.C+语言是 C 语言的超集B.C+语言对 C 语言进行了扩充C.C+语言包含 C 语言的全部语法特征D.C+语言与 C 语言都是面向对象的程序设计语言 解析:解析:C 语言是一种面向过程的程序设计语言,而 C+语言是一种面向对象的设计语言,C+语言是C 语言的超集,它包含了 C 语言的所有语言特性,并进行了扩充。3.已知表达式+x 中的“+”是作为成员函数重载的运算符,则与+x 等效的运算符函数调用形式为_。(分数:1.00)A.oper
21、ator+(1)B.operator+(x)C.operator+() D.operator+(x)解析:解析 本题考查的是前缀自增运算符的重载。由于题意中“+”是作为成员函数重载的运算符,所以若要显式的调用该运算符,需要使用该类的对象加上“.”运算符,即 x.operator+();又因为为了区分前缀运算符和后缀运算符,在调用后缀运算符时,需要给出一个整型实参值,而前缀运算符则不需要,所以+x 等效的运算符函数调用形式为:x.operator+(),答案为 C 选项。4.当使用 ifstream 流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为_。(分数:2.00)A.ios_b
22、ase:in B.ios_base:in | ios_base:outC.ios_base:outD.ios_base:in class Base public: virtual void function1()cout“0“; void function2()out“1“; ; class Derived:public Base oublic: void function1()cout“2“; void function2()cout“3“; ; int main() Base*p=new Derived(); p-function1(); p-function2(); return 0;
23、运行时的输出结果是_。(分数:1.00)A.01B.21 C.03D.23解析:解析 本题中需要注意的是虚函数的定义:指向基类的指针在操作它的多态类对象时,会根据不同的类对象,调用其相应的函数,这个函数就是虚函数。所以 p-functionl();会指向实现类Derived,而 p-function2()则会指向 Base。6.用链表表示线性表的优点是 _ 。(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作 D.数据元素的物理顺序和逻辑顺序相同解析:解析 在链表中因为除了存放数据元素之外,还要存放指针,所以链表花费的存储空间比顺序表还要多。在插入和删除数据
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 分类 模拟 243 答案 解析 DOC
