[计算机类试卷]国家二级C++机试(类和对象)模拟试卷9及答案与解析.doc

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

1、国家二级 C+机试(类和对象)模拟试卷 9及答案与解析 一、选择题 1 有如下类声明: class Foo int bar; ; 则 Foo类的成员 bar是 ( )。 ( A)公有数据成员 ( B)公有成员函数 ( C)私有数据成员 ( D)私有成员函数 2 下列关于 getValue成员函数的实现中,正确的是 ( )。 ( A) SAMPLE: setValue(int n0)n=n0; ( B) void SAMPLE: setValue(int n0)n=n0; ( C) void setValue(int n0)n=n0; ( D) (int n0)n=n0; 3 如果派生类以 pr

2、otected方式继承基类,则原基类的 protected成员和 public成员在派生类中的访问属性分别是 ( )。 ( A) public和 public ( B) public和 protected ( C) protected和 public ( D) protected和 protected 4 有如下程序: #include #include using namespace std; class XCD char*a: int b; public: XCD(char*aa, int bb) a-new charstrlen(aa)+1; strcpy(a, aa); b=bb; c

3、har*Geta()return a; int Getb()return b; ; int main() char*p1=abed, *p2=weirong; int d1=6, d2=8; XCD x(p1, d1), y(p2, d2); cout using namespace std; class test private: int a; public: test0cout+constructor+endl; test(int a)cout+a+endl; test(const test&test) a=test a; cout+, copy constructor+endl; tes

4、t()Cout+destructor+endl; ; int main() test A(3); return 0; 运行时输出的结果是 ( )。 ( A) 3 ( B) constructor destructor ( C) copy constructor destructor ( D) 3 destructor 11 有如下程序: #include using namespace std; class Base public: Base(int x=0)cout using namespace std; class Sample public: Sample() Sample()cout

5、 using namespace std; class ONE int c; public: ONE(): c(0)cout using namespace std; class Name char name20; public: Name() strcpy(name, “); cout using namespace std; class CD public: CD()cout using namespace std; class Monkey public: Monkey() cout using namespace std; class MyClass public: MyClass()

6、+count; MyClass()-count; static int getCount()(return count; private: static int count; ; int MyClass: count=0; int main() MyClass obj; cout using namespace std; class XA int a: public: static int b: XA(int aa): a(aa)b+; int getA()return a; ; int XA: b=0; int main() XA d1(4), d2(5); cout using names

7、pace std; class VAC public; int f() constreturn 3; int f()return 5; ; Int main() VAC v1; const VAC v2; cout using namespace std; class A public: A(int i): rl(i) void print() cout using namespace std; class Boat; class Car public: Car(int i): weight(i) friend int Total(const Car c, const Boat b); pri

8、vate: int weight; ; class Boat public: Boat(int i): weight(i) friend int Total(const Car&c, const Boat b); private: int weight; ; int Total(const Car c, const Boat&b) return c weight+b weight; int main() Car c(10); Boat b(8); cout执行成员对象的构造函数,调用顺序按照各个成员对象在类中声明的顺序 -执行自身的构造函数。本题中,首先会构造基类 Base,调用 Base类的

9、构造函数,输出 0;然后还定义了一个 Base类的对象,再次调用 Base类的默认构造函数输出0;最后构造自身, 因主函数中传入了构造参数 1,所以输出 1。故最后输出结果是: 001。 【知识模块】 类和对象 12 【正确答案】 B 【试题解析】 在 main函数中,定义了 Sample temp2的一个包含两个对象的数组,还定义了一个 *pTemp2,是包含两个指向类对象的指针的数组,故定义的指针当 main函数结束后是不会调用析构函数的,只有包含两个对象的数组temp2会调用析构函数因此只输出两个 *。 【知识模块】 类和对象 13 【正确答案】 C 【试题解析】 由类 TWO的定义可

10、知,其成员为类 ONE的两个对象 onel和one2。所以在主函数中构建类 TWO的对象 t(4)时,先后调用类 ONE的构造函数ONE(): c(0)cout1; 和 ONE(int n): c(n)cout2; 输出 12,然后再调用类TWO的构造函数 TWO(intm): one2(m)cout3; ,输出 3。 【知识模块】 类和对象 14 【正确答案】 D 【试题解析】 类 Name有两个构造函数,在默认构造函数中,给字符数组 name赋空值,并输出一个 ?;在带有字符指针的构造函数中,把字符 指针 fname所指的字符串赋给字符数组 name,并输出一个 ?。所以在主函数中,定义了

11、 Name的三个对象, name0、 name1、 name2,在创建这三个对象时,会调用构造带参数的函数对前两个对象赋值,调用默认的构造函数把 name2的值赋为空值。这时会输出三个 “?”符号。 【知识模块】 类和对象 15 【正确答案】 B 【试题解析】 在这个程序的主函数中定义了 3个 CD类的实例对象 a,d0, d1和一个指向 CD类对象的指针变量 b,所以当程序结束时,执行 CD的析构函数输出字符 C三次。 【知识模块】 类和对象 16 【正确答案】 B 【试题解析】 构造函数具有下面 4个特殊的性质:构造函数的名字必须与类名相同;构造函数不指定返回类型,它隐含有返回值,由系统内

12、部使用:构造函数可以有一个或多个参数,因此构造函数可以重载;在创建对象时,系统会自动调用构造函数。 【知识模块】 类和对象 17 【正确答案】 D 【试题解析】 在类 Monkey中定义了默认的构造函数和带参数的构造函数,所以在主函数中,定义 Monkey的对象 p1时,调用默认的构造函数,输出 M;定义Monkey的对象 p2时,调用带参数的构造函数,输出 X;在执行 “delete p2; ”语句时,调用析构函数,输出 Y,在退出程序时,调用析构函数输出 Y。 【知识模块】 类和对象 18 【正确答案】 D 【试题解析】 此题考查的是 this指针的使用。类的每一个成员函数都有一个隐含的常

13、量指针,即 this指针。类的静态成员函数不能含有 this指针,因为 this指针是一个指向本对象的指针。 【知识模块】 类和对象 19 【正确答案】 D 【试题解析】 this是成员函数所属对象的指针, 它指向类对象的地址。成员函数通过这个指针可以知道自己属于哪一个对象。它隐藏于每个类的非静态成员函数中 。 【知识模块】 类和对象 20 【正确答案】 A 【试题解析】 此题考查的是静态成员。静态成员的特性是不管这个类创建了多少对象,它的静态成员都只有一个拷贝副本,这个副本被所有属于这个类的对象共享。题目中,首先定义了 obj对象,其构造函数使静态数据成员 count增 l,故输出 “1”;

14、然后通过指针动态创建了 MyClass类的对象,构造函数被再次调用,count变为 2,输出 “2”;接着删除创建的 MyClass类的对象,调用析构函数,count减 1变为 1,输出 “1”。故最终输出结果是 121。 【知识模块】 类和对象 21 【正确答案】 A 【试题解析】 类 AA的成员函数直接引用类 AA的非静态数据成员。 【知识模块】 类和对象 22 【正确答案】 C 【试题解析】 在类 XA的构造函数中,定义了用成员变量 a的值初始化变量 aa,同时静态成员变量 b值加 1。所以当在主 main函数中定义类 XA的对象 d1(4)后,变量 b的等于 1,定义对象 d2(5)后

15、,变量 b的值等于 2,所以表达式d1 getA()+d2 getA()+XA: b+dl b等于 4+5+1+2+1=13。 【知识模块】 类和对象 23 【正确答案】 A 【试题解析】 此题考查的是常成员函数的应用。 VAC类中说明了两个函数,一个是常成员函数,一个是普通函数;在主函数中说明了两个对象,通过普通对象v1调用的是普通函数,输出 5:通过常对象 V2调用的是常成员函数,输出 3。 【知识模块】 类和对象 24 【正确答案】 B 【试题解析】 类 A包括一个整型数据成员 r1,一个一般成员函数 print(),一个常成员函数 print()const。在主函数中定义了对象 a1,

16、并对 r1的值赋 2和常对象a2,并对 r1的值赋 4,在 C+中,常对象不能被更新,所以常对象只能调用类的常成员函数,而不能调用一般成员函数。而一般的对象,既可以调用一般成员函数也可以调用常成员函数。所以在本题中,当执行 a1 print()时,输出为 E2-,执行 a2 print()时,输出为 C16-。 【知识模块】 类和对象 25 【正确答案】 D 【试题解析】 函数 listen()作为类 IMS的常成员函数,一般对象 obj1和常对象obj2都可以调用它,而函数 speak()作为 IMS的一般成员函数,则只有一般对象obi1可以调用,而常对象 obj2调用会产生编译错误。 【知识模块】 类和对象 26 【正确答案】 B 【试题解析】 此题考查了常成员函数和友元函数的概念。选项 A中, getRef()函数的返回值和函数函数类型不符,故错误; C选项中 set()常成员函数改变了数据成员的值,这是不允许的; D选项中 show()函数被同时定义成友元函数和常成员函数是错误的。 【知识模块】 类和对象 27 【正确答案】 A 【试题解析】 程序中定义了类 car和类 Boat,在两个类中分别定义他们的构造函数和友元函数 friend。程序在 VC6 0中编译通过。 【知识模块】 类和对象

展开阅读全文
相关资源
猜你喜欢
  • ARMY MIL-PRF-55310 12 H-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 05 MHz THROUGH 10 MHz HERMETIC SEAL SQUARE WAVE CMOS《晶体振荡器(XO) 方波为0 05兆赫-10兆赫的互补金属氧化物半.pdf ARMY MIL-PRF-55310 12 H-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 05 MHz THROUGH 10 MHz HERMETIC SEAL SQUARE WAVE CMOS《晶体振荡器(XO) 方波为0 05兆赫-10兆赫的互补金属氧化物半.pdf
  • ARMY MIL-PRF-55310 14 H-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 1 Hz THROUGH 25 MHz HERMETIC SEAL SQUARE WAVE TTL《晶体振荡器(XO) 方波0 1赫兹-25兆赫的晶体管晶体管逻辑半导体系列.pdf ARMY MIL-PRF-55310 14 H-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 1 Hz THROUGH 25 MHz HERMETIC SEAL SQUARE WAVE TTL《晶体振荡器(XO) 方波0 1赫兹-25兆赫的晶体管晶体管逻辑半导体系列.pdf
  • ARMY MIL-PRF-55310 15 G-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 01 Hz THROUGH 10 MHz HERMETIC SEAL SQUARE WAVE CMOS《晶体振荡器(XO) 方波为0 1赫兹-10兆赫的互补金属氧化物半导体.pdf ARMY MIL-PRF-55310 15 G-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 01 Hz THROUGH 10 MHz HERMETIC SEAL SQUARE WAVE CMOS《晶体振荡器(XO) 方波为0 1赫兹-10兆赫的互补金属氧化物半导体.pdf
  • ARMY MIL-PRF-55310 16 J VALID NOTICE 1-2012 Oscillator Crystal Controlled TYPE 1 (Crystal Oscillator (XO)) 0 1 HZ Through 80 MHZ Hermetic Seal Square Wave TTL.pdf ARMY MIL-PRF-55310 16 J VALID NOTICE 1-2012 Oscillator Crystal Controlled TYPE 1 (Crystal Oscillator (XO)) 0 1 HZ Through 80 MHZ Hermetic Seal Square Wave TTL.pdf
  • ARMY MIL-PRF-55310 17 F-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) GATED 250 kHz THROUGH 50 MHz HERMETIC SEAL SQUARE WAVE TTL《晶体振荡器(XO) 方波为250千赫-50兆赫的晶体管晶体.pdf ARMY MIL-PRF-55310 17 F-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) GATED 250 kHz THROUGH 50 MHz HERMETIC SEAL SQUARE WAVE TTL《晶体振荡器(XO) 方波为250千赫-50兆赫的晶体管晶体.pdf
  • ARMY MIL-PRF-55310 18 F-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 01 Hz THROUGH 15 0 MHz HERMETIC SEAL SQUARE WAVE CMOS《晶体振荡器(XO) 方波为0 01赫兹-50兆赫的晶体管晶体管逻.pdf ARMY MIL-PRF-55310 18 F-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 0 01 Hz THROUGH 15 0 MHz HERMETIC SEAL SQUARE WAVE CMOS《晶体振荡器(XO) 方波为0 01赫兹-50兆赫的晶体管晶体管逻.pdf
  • ARMY MIL-PRF-55310 19 E-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 1 0 MHz THROUGH 60 0 MHz HERMETIC SEAL SQUARE WAVE TTL《晶体振荡器(XO) 方波为1 0赫兹-60兆赫的晶体管晶体管逻辑半.pdf ARMY MIL-PRF-55310 19 E-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 1 0 MHz THROUGH 60 0 MHz HERMETIC SEAL SQUARE WAVE TTL《晶体振荡器(XO) 方波为1 0赫兹-60兆赫的晶体管晶体管逻辑半.pdf
  • ARMY MIL-PRF-55310 25 D-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 25 MHz THROUGH 175 MHz HERMETIC SEAL SQUARE WAVE EMITTER COUPLED LOGIC《晶体振荡器(XO) 方波为25赫兹.pdf ARMY MIL-PRF-55310 25 D-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 25 MHz THROUGH 175 MHz HERMETIC SEAL SQUARE WAVE EMITTER COUPLED LOGIC《晶体振荡器(XO) 方波为25赫兹.pdf
  • ARMY MIL-PRF-55310 26 D-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 10 kHz THROUGH 65 MHz HERMETIC SEAL SQUARE WAVE HIGH SPEED CMOS《晶体振荡器(XO) 方波为10千赫-65兆赫的高.pdf ARMY MIL-PRF-55310 26 D-2009 OSCILLATOR CRYSTAL CONTROLLED TYPE 1 (CRYSTAL OSCILLATOR (XO)) 10 kHz THROUGH 65 MHz HERMETIC SEAL SQUARE WAVE HIGH SPEED CMOS《晶体振荡器(XO) 方波为10千赫-65兆赫的高.pdf
  • 相关搜索

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

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